[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.