[Ecls-list] How to call a function in a new core

Juan Jose Garcia Ripoll lisp at arrakis.es
Wed Jan 11 10:23:02 UTC 2006


On Wed, 2006-01-11 at 18:23 +0100, Peter Van Eynde wrote:
> Hello,
> 
> I'm trying to integrate common-lisp-controller support in ecl and so far I can 
> create a new core with all the lisp files I need. The only thing I need to do 
> now is call a function in this new image. Either on startup or at creation 
> time. 
> 
> How do I do this? A simple
> (c:build-program
>    "new-ecl"
>    :lisp-files files
>    :epilogue-code 
>   (lambda ()
>       (funcall (intern   
>                           (symbol-name :init-common-lisp-controller-v5)
>                            (find-package :common-lisp-controller))
>                        "ecl")
>      (when (probe-file #p"/etc/lisp.config")
>            (load #p"/etc/lisp.config"))
>     (top-level))

Unfortunately :epilogue-code must be C code. This is because
C:BUILD-PROGRAM does not actually compile any lisp code, it simply joins
modules together with some C stub. I have just finished a patch that
removes this limitation. I will test it tomorrow and maybe submit it to
CVS.

Juanjo





More information about the ecl-devel mailing list