From: Jeff Dalton
Subject: Re: Comparison: Beta - Lisp
Date: 
Message-ID: <Cvx67A.69@cogsci.ed.ac.uk>
In article <··········@nz12.rz.uni-karlsruhe.de> ······@ma2s2.mathematik.uni-karlsruhe.de (Bruno Haible) writes:

>A. The BETA language
>
>1. Has an incredible symmetry between data and executable program code.
>   Much better than Lisp. 

This is useless without some details.  All I know is that you think
Beta has an "incredible symmetry".

Most of the rest of the message has the same problem.

>2. Lexically scoped, but a module system ("fragment" system) permits
>   to put parts of a program into separate files - effectively splitting
>   interface and implementation.

Virtually every Lisp in the universe lets you put parts of the
program in separate files.  So what exactly is the issue here?

>7. The ":<" token makes up
>   - generic classes (not present in Lisp, you would have to use
>     a DEFCLASS in a non-null lexical environment),

So in fact what you mean is *Common* Lisp, not Lisp.

>9. CALL-NEXT-METHOD goes the other way around: the most general method
>   determines the general behaviour, the most specific method only
>   plays the role of a fixup.

Again more is needed.

>11. Concurrency, i.e. deterministic parallelism. (Would make
>    WITH-PACKAGE-ITERATOR and WITH-HASH-TABLE-ITERATOR obsolete in CL.)

I think you are confused about the nature and role of these
iterators.  But perhaps not.  It's impossible to tell from
the little you say.

>4. Speed:
>   consing up 1000 closures into a list
>         Mjolner      0.049 sec
>         CLISP        0.064 sec
>         GCL          0.168 sec
>   some integer array hacking
>         C            4.2 sec
>         Mjolner    111 sec
>         GCL        288 sec
>         CLISP      415 sec
>   (All timings on a 486/33.)

It's necessary to see the code.  What declarations did you use
in Common Lisp?  Also, try a faster Common Lisp.