|Paolo Amoroso's weblog. Main interests: Lisp, astronomy (Moon), space exploration (Apollo and early manned programs)||Calendar of past entries | Related links|
Configuring SLIME for McCLIM with CMUCL
Luke Gorrie, in this
message posted to the
slime-devel mailing list,
explains how to configure SLIME for use with
McCLIM and CMUCL.
The configuration involves the proper initialization of
CMUCL's cooperating multiprocessing facility via
mp::startup-idle-and-toplevel-loops, which is tricky
because the function does not return. If this is not done, McCLIM may
exhibit under CMUCL significant performance degradation, such as
taking an application several tens of seconds, instead of a fraction of
a second, to start up on a Pentium IV class machine.
There is not much documentation on multiprocessing initialization, and
this is an obscure corner of CMUCL. But the
mp::startup-idle-and-toplevel-loops documentation string
does shed some light, and explains why the function is still not
Enter the idle loop, starting a new process to run the top level loop. The awaking of sleeping processes is timed better with the idle loop process running, and starting a new process for the top level loop supports a simultaneous interactive session. Such an initialisation will likely be the default when there is better MP debug support etc.
|Copyright © 2004 by Paolo Amoroso
Created with BlogMax
|About Lisp | Practical Common Lisp (learn Lisp) | Planet Lisp (blog agregator) | Common Lisp Directory (software and resources) | Why Lisp?|