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

Re: EVAL-WHEN (really symbol-functio

> From: hpfclp!diamant@hplabs.ARPA
> Subject: Re: EVAL-WHEN (really symbol-function)
>   Here is what CLtL says (p. 90):
> "symbol-function returns the current global function definition named
> by symbol.  An error is signalled if the symbol has no function
> definition; see fboundp.  Note that the definition may be an object
> representing a special form or macro.  In the latter case, it is an
> error to attempt to invoke the object as a function."
> Note that the only valid object which may be returned is something of
> type function (if the symbol has a global function definition).  This
> is obvious from the last sentence in the paragraph above.  Since you
> claim any object can be stored and that the retrieved value must be
> EQL, then any object can be retrieved.  This is totally contradictory
> to the quoted paragraph above.  It very explicitly states in which
> cases it is an error to invoke the object as a function, and the case
> you are establishing is not covered.
I don't see any reason to read into the quoted text that those are the
ONLY cases that may not be invokable.  I read that last sentence as a
cautionary example indicating that not everything residing in that slot
will be executable.  I agree with Guy that the nature of things put
into that slot is implementation specific -- portable code should not
assume anything about it.

scott preece
gould/csd - urbana