Lisps



On Wed, 2001-10-31 at 20:08, Camm Maguire wrote:
> Greetings!
> 
> James Amundson <amundson@fnal.gov> writes:
> 
> > On Wed, 2001-10-31 at 08:59, Camm Maguire wrote:
> > Result summary (times in seconds):
> > 
> > 1) clisp: 161, cmucl: 40, gcl: 147
> > 
> > 2) clisp: 7.2, cmucl: 3.3, gcl: 5.8 
> > 
> 
> Thanks for this!  Can you repeat with the following command executed
> first?  (Dr. Schelter did this on his benchmarks.)
> 
> :lisp (progn (allocate 'cons 8000 t) (allocate 'fixnum 1000 t) (si::allocate-relocatable-pages 2000 t))

No, I can't. Why?
	1) The :lisp function uses evalhook, which is not part of the ANSI
standard, so CMUCL does not have it. This problem will have to be fixed
in the 5.9 series.
	2) Memory allocation functions are implementation dependent. I don't
know off the top of my head to do the equivalent things for clisp and
cmucl.

> This might level the playing field among systems starting out with
> different amounts of memory allocated. 

Like I said, the tests I did weren't controlled. I'd like to see a
better controlled set of benchmarks after we get a better controlled
version of Maxima.

> Also, what about some other non performance issues?
> 
> 1) fraction of common lisp standard implemented?

This is the big issue. clisp and CMUCL do a pretty good job of
implementing the ANSI CL standard. GCL has a couple of ANSI features,
but it is not an ANSI Common Lisp implementation. Period. Many, many
ANSI features are missing from GCL. This is my primary complaint against
GCL.

All of the following points are less important to me than this one.

> 2) correctness?
> 3) compile process, i.e. to C, asm, other?
> 4) portability
> 5) license
> 6) stability
> 7) libraries or equivalent

--Jim