Version 1 (modified by ehuelsmann, 14 years ago) (diff)

What Ville and I found out about compiled closures yesterday

Compiled closures

ABCL has interpreted closures? and compiled closures. The latter category is described at this page.


Closures of this type consist of 2 building blocks:

  1. The (outer) closure function of the CompiledClosure? type (which extends Closure)
  2. The (inner) function of the ClosureTemplateFunction? type (which also extends Closure)

The inner function is loaded once and re-used for each CompiledClosure? being instantiated (need to verify: isn't it reloaded/created every time?). The outer closure provides the required part of its environment through a 'context array'.

Context arrays

(need to fill this in: how do they interact with parameter-construction?)