All Manuals > LispWorks® User Guide and Reference Manual > 47 The SYSTEM Package

apply-with-allocation-in-gen-num Function

Summary

Allows control over which generation objects are allocated in, in 64-bit LispWorks.

Package

system

Signature

apply-with-allocation-in-gen-num what gen-num func &rest args => results

Arguments
what
One of the keywords :cons, :symbol, :function, :non-pointer and :other.
gen-num
An integer in the inclusive range [0,7], or nil.
func
A function designator.
args
The arguments passed to func.
Values
results
The values returned from the call to func with args.
Description

The function apply-with-allocation-in-gen-num applies the function func to args such that objects of allocation type what are allocated in generation gen-num, in 64-bit LispWorks.

See also the keyword :allocation to make-array, which catches the most common cases.

It is probably quite rare that it is useful to use this function, unless the function allocates a lot, and you are certain that every object that is allocated of the allocation type is long-lived, which is normally difficult to tell.

Notes
  1. Allocation of interned symbols is controlled separately by *symbol-alloc-gen-num*.
  2. In 32-bit LispWorks the argument what is ignored and the effect is like that of the macro allocation-in-gen-num.
  3. In the Mobile GC, gen-num must be 0, 1 or 2.
See also

allocation-in-gen-num
make-array
*symbol-alloc-gen-num*


LispWorks® User Guide and Reference Manual - 01 Dec 2021 19:31:02