[Ecls-list] Long time building of OpenAxiom with ECL 10.1.1

Juan Jose Garcia-Ripoll juanjose.garciaripoll at googlemail.com
Mon Jan 18 09:41:46 UTC 2010


On Mon, Jan 18, 2010 at 10:29 AM, Gabriel Dos Reis <
gdr at integrable-solutions.net> wrote:

> Is it conceivable to pass (a pointer to) the lisp environment to each
> C function, as opposed to storing it in a thread local storage?


It is conceivable, but it would involve a major rewrite. Right now what I
try to do is to minimize the damage by calling ecl_process_env() once per
function at most.

There is also one thing I forgot to mention: special variable binding &
access is  bit too expensive in the multithreaded environment right now --
we use an EQ-hash table instead of an index into a thread-local vector.If
Axiom uses a lot of special variables it could profit from rewriting that
part with the unfortunate consequence that symbols garbage collection might
become more complicated.

Juanjo

-- 
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20100118/da5ad781/attachment.html>


More information about the ecl-devel mailing list