[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
a LAMBDA special form
- To: MOON at SCRC-TENEX
- Subject: a LAMBDA special form
- From: Kent M. Pitman <KMP at MIT-MC>
- Date: Mon, 22 Nov 1982 08:55:00 -0000
- Cc: common-lisp at SU-AI
Date: Friday, 19 November 1982 22:36-EST
From: MOON at SCRC-TENEX
To: common-lisp at SU-AI
Re: named lambdas
... One way to do this is to say that any list starting with LAMBDA is
acceptable as a function, and will be translated into whatever the
implementation wants...
ie, LAMBDA should be a special form which returns a "function" (I use quotes
since I don't mean here an datatype, but rather an intension on a [possibly
already existing] datatype.) A typical system-dependent implementation being
something like
(defmacro lambda (bvl &body body) `#'(lambda ,@body)).
Similarly for named-lambda.
I think this is a good idea.
... Another way would be to add a new primitive MAKE-FUNCTION ...
I would say this should be not so much an addition as possible extension.
The LAMBDA special form would have the interesting advantage of not needing
a preceeding #' and would still be statically analyzable by the compiler,
which is a decided advantage. But LAMBDA would not be as general (without
asking the user to call something like EVAL, which is obviously wrong).
So both are really called for.