Re: More on compiler optimization
"Yuri Davidovsky (as work at disclosure dot ie)" <[email protected]>
| Newsgroups | gmane.lisp.lispworks.general |
|---|---|
| Message-ID | <[email protected]> |
Sent from my iPad > On 12 Feb 2025, at 20:21, Paul Werkowski (as pw at snoopy dot qozzy dot com) <[email protected]> wrote: > > The main thing to get zero garbage (in addition to proper type and optimize declarations) is to ensure a boxed object, like a DOUBLE-FLOAT value, does not escape the compilation environment it exist in. Such an object can exist on the heap (default), as a raw value in a typed array, or on the control stack. Does that basically imply that once you initialise a double float within a function body and declare it as such, it will remain in its raw form as long as you do not supply it as an argument to a non-local function and do not return it? What exactly does ‘compilation environment’ mean here, a defun, a let, or something else? _______________________________________________ Lisp Hug - the mailing list for LispWorks users [email protected] http://www.lispworks.com/support/lisp-hug.html