On Sun, Dec 18, 2011 at 8:09 PM, Matthew Mondor <mm_lists@pulsar-zone.net> wrote:
If I remember SBCL inlines flet/labels by default, yet I'm unsure if
this is always done or only for small functions, I assume the latter.

I am not very keen on this, at least not with the current code, because analyzing what is large and what not is a bit complicated and can only be done in the second phase of the analysis -- when everything is stored as a list of structures and the lisp code is no longer recognizable.

In any case, if the FLET/LABELS function is small enough and is not closed over variables, the C compiler will inline it most of the time.
Is inlining also possible for setf functions?

Good question... Actually it does not work, but because of a stupid bug that also prevents the compiler from analyzing any kind of compiler macro for SETF forms. Will fix it later on.


Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)