[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

CLISP 1996-07-22



The following message is a courtesy copy of an article
that has been posted as well.


Hi,

        I'm currently working on CLISP 1996-07-22, a Common Lisp
implementation done by Bruno Haible, Michael Stoll and Marcus Daniels.
The interpreter should run under Linux-2.0.29/ELF (gcc is 2.7.2.1,
binutils 2.7.0.3/2.7.0.9, libc 5.2.18/5.4.7 and higher).

On compiling the full set of possibilities I've detected that the
generational gc will not work under ELF ... a short test of this
can be done with the binary packages on
  ftp://sunsite.unc.edu/pub/linux/devel/lang/lisp/clisp-linux-elf.tar.gz
by making the lisp interpreter with the full set of the possible
modules (make fromdir=full). On the first gc one gets the ``final'' result:

*** - handle_fault error2 ! address = 0x4010C00 not in [0x4000000,0x4000000) !
SIGSEGV cannot be cured. Fault address = 0x4010C00.
Segmentation fault

Ok, the intervall is really funny ;-) ... it's looks like a mistake in
the complicated cpp macros in lispbibl.d/lispbibl.c ...
Is there any fix avaible to get the generational garbage collection
stabel on work under ELF?

With -DNO_GENERATIONAL_GC the normal garbage collection works without
stopping during the tests with `full/lisp.run -M full/lispinit.mem'.
Only the 15 digit definition of PI and the usage of libm causes some
precision errors.

Note: I have to add the option -freg-struct-return to make the tests
during configure happy ... and I'm using readline, dynamic-ffi, and
after a few changes dynamic-modules.

BTW: One question more: What's the main difference of the gcl and the
CLIPS implementation of Common Lisp (speed, language and graphic
interfaces, function calls, ..., CLtL2 support, running maxima)?


      Werner

-- 
 Dr. Werner Fink  --  S.u.S.E. GmbH,  Gebhardtstr. 2, 90762 Fuerth,  Germany
 mail:werner@suse.de     http://www.suse.de/~werner/     fax:+49-911-3206727
 Click <A HREF="http://www.suse.de/~werner/";>here</A>
------   Hiroshima '45   -----   Chernobyl '86   -----   Windows '95   -----