[Openmcl-devel] impact of number of arguments and closures on performance

Taoufik Dachraoui dachraoui.taoufik at gmail.com
Mon May 11 23:54:03 PDT 2020


I am implementing a new lisp dialect programming language (statically
typed, generic programming, lambda calculus + syntax)
I found that limiting the number of variables in a closure may be of help
in optimising the interpreter (simulator)

I would like to know how closures are efficiently implemented in lisp
languages

In the implementation I have a notion of frame which contains the address
of a function and the variables in a closure

and I am trying to optimise the implementation by limiting the size of the
closure but this may not be acceptable

Any thoughts are welcome, and wanted to know how Clozure CL is implemented
and if there is a notion of frames

regards
-Taoufik

On Mon, May 11, 2020 at 11:27 PM Michał "phoe" Herda <phoe at disroot.org>
wrote:

> On 11.05.2020 23:25, Taoufik Dachraoui wrote:
> > Is there any limitations on number of function arguments and size of
> > closures? what is the impact on performance?
> See CLHS CALL-ARGUMENTS-LIMIT: http://clhs.lisp.se/Body/v_call_a.htm
>
> I'm not aware about closure sizes though, or any performance issues that
> might occur because of them. How many variables are you attempting to
> close over?
>
> ~phoe
>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> https://lists.clozure.com/mailman/listinfo/openmcl-devel
>


-- 
Taoufik Dachraoui
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20200512/a666b784/attachment.htm>


More information about the Openmcl-devel mailing list