[Bese-devel] Learning Lisp
Drew Crampsie
drewc at tech.coop
Wed Sep 21 16:45:57 UTC 2005
Waldo Rubinstein wrote:
> I have visited
> HyperSpec, but it seems you need to have some degree of CL knowledge
> before you can understand what it's all saying. This looks more like
> language standard specs in grammar form which could be, as you suggest,
> used as reference.
That is essentially right, although there are a wealth of examples as
well. I'm pretty sure most use the hyperspec as a reference, but i agree
that some CL know-how is a prerequisite.
>> It also might help to pick up a little scheme, at least the concept
>> call/cc, as UCW does differ from Common Lisp in that regard :).
> Wow. Now you threw me off completely. No wonder I couldn't always
> follow the UCW code I was looking :).
UCW is a Continuation based framework. Since there are no native
continuations in CL (there are in scheme), we need to fake it. UCW does
this by embedding an interpreter for a Common Lisp-like language that
includes call/cc. For the most part, it is identical to common lisp, and
the distinction shouldn't worry you too much at first, but it is there.
> I thought UCW was written in CL?
To borrow a phrase from Graham, UCW is written _On Lisp_ :) .
> How could it differ? I guess you could always write your own language
> within Lisp and you could always make it look more like Scheme (at
> least in concepts) than CL code. How essential is it to have some
> Scheme knowledge?
Its mostly knowlege of call/cc that would be good to have. Since CL does
not include this operator, scheme is not a bad place to look. FWIW, i
know very little scheme beyond playing around with it.
I learned Lisp back in college (14 years ago) and
> never touched it again. I guess I could pick it up again rather
> quickly. Now, should I just read high level concepts of Scheme in order
> to understand UCW's concepts or is it more like learning to program in
> Scheme that will help me more?
call/cc is really all you need to know, and even then it's not a big
deal. Just some food for thought.
drewc
More information about the bese-devel
mailing list