if does not evaluate
Jacek Generowicz
jacek.generowicz at cern.ch
Thu Jun 17 02:48:08 EDT 2004
[This got lost in a daemon problem at my end ... here it goes again.]
moughanj at tcd.ie (James Moughan) writes:
> > > We have to have a rather arbitrary #' funcall and syntax to stop a
> > > function evaluating long enough to shift it to where it's useful.
> >
> > What on earth are you talking about ?
>
> Quoting #' a function.
This is not about delaying evaluation.
#' is a reader macro for FUNCTION:
#'foo => (function foo)
Common Lisp is what is known as a Lisp-2: this means that it has
separate namespaces for variables and functions (actually, it's more
like a Lisp-7, or a Lisp-at-least-7). #' is used in situations where
you need to specify explicitly that the namespace you are referring to
is the function namespace.
I'm not going to discuss, here, whether a single namespace is better
or worse than a multiple one (the Lisp-1 vs Lisp-2 debate/religious
war/flamefest); Google c.l.lisp or c.l.scheme if you feel like it (I
would advise against posting questions about it to those groups.)
Anyway, the point is that #' has nothing to do with "stop[ping] a
function evaluating"
More information about the Python-list
mailing list