Subject: Re: What kind of Lisp should I learn if I want to start programing with Lisp?
From: rpw3@rpw3.org (Rob Warnock)
Date: Sun, 08 Feb 2009 04:49:51 -0600
Newsgroups: comp.lang.lisp
Message-ID: <oMqdnbXNV-1SJRPUnZ2dnUVZ_vudnZ2d@speakeasy.net>
Kaz Kylheku  <kkylheku@gmail.com> wrote:
+---------------
| Rob Warnock <rpw3@rpw3.org> wrote:
| > Rainer Joswig  <joswig@lisp.de> wrote:
| > +---------------
| >| rpw3@rpw3.org (Rob Warnock) wrote:
| >| > Well, there's always Lisp500 <http://www.modeemi.fi/~chery/lisp500/>.
| >| > 88 initial defined symbols, float-only arithmetic, 500 LOC of *very*
| >| > dense C!  Then loading "init500.lisp" adds another 761 symbols,
| >| > fleshing out the CL compatibility a *lot*.
| >| 
| >| ... How readable is the C part of Lisp500?
| > +---------------
| >
| > Almost totally *unreadable*, actually!  ;-}  It's full of
| > "obfuscated C"-style compressions to keep the LOC small, e.g.:
| [ snip ]
| >     #define NE *g
| [ snip ]
| >     lval eval_multiple_value_call(lval *f, lval ex) { lval *g=f+3; lval l;
| >      f[1]=evca(f, ex); for (ex=cdr(ex); ex; ex=cdr(ex)) { *g=*f;
|                                                              ^^
| Geez, how confusing! Why is this *g explicitly written, instead of
| taking advantage of the abstracting power of the NE macro?  ;)
+---------------

Heh. Now you see one of the reasons I'm writing my own
"Quick & Dirty Lisp" (QDL) instead of just using Lisp500!!  ;-}  ;-}
[Well, there were several other reasons, too... ;-} ]

You might be amused to know that even Lisp500's *author*
occasionally has had trouble remembering how it works:  ;-}  ;-}

    http://www.modeemi.fi/~chery/lisp500/
    ...
    2004-05-11 Implemented flet and labels in the compiler. During a
    short break in working on lisp500, I apparently managed to forget how
    the stack discipline goes. It was somewhat painful to figure out how.
    ...

That said, I still admire Lisp500 for the huge fraction of CL that
it manages to achieve in only 500 lines of C & 5800 lines of Lisp.

But I wouldn't recommend it for study for someone new to Lisp...


-Rob

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607