[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

NAMED-LAMBDA and function cells

    Date:     12 November 1982 0931-pst
    From:     Earl A. Killian            <Killian at MIT-MULTICS>

    This is actually a good argument against allowing
    (APPLY '(LAMBDA ...) ...)

Now there's a significant break with the past!

The rest of your message is a result of confusing two different meanings for
the term "function cell."  One is an internal object of the implementation,
the part of a symbol through which calls to a function named by that symbol
indirect.  The other is that conceptual piece of storage manipulated by the
FDEFINE and FDEFINITION primitives, or (at a lower level) SYMBOL-FUNCTION-VALUE
and its SETF.  These happen to be the same in the Lisp machine, and I guess
in the PERQ, but there is no reason for them to be the same.  The former is
implementation-dependent and its goal is to make function calling efficient.
The latter is Common-Lisp-defined and its goal is to allow portable programs
to manipulate function definitions.  What the machine sees must be efficient;
what the user sees must be portable.  (Read "ought" for "must" if you like).