On 1/4/09, Billinghurst, David (RTATECH)
<David.Billinghurst at riotinto.com> wrote:
> I can reproduce this with CLISP 2.46 on cygwin, and I think that
> CLISP is correct.
>
> The common lisp hyperspec for FUNCTIONP gives as examples:
> (functionp '(lambda (x) (* x x))) => false
> (functionp #'(lambda (x) (* x x))) => true
> CLISP conforms, but gcl gives true in both cases.
Yes, but (functionp (lambda (x) (* x x))) is something else again.
Isn't the result of (lambda (x) ...) the same as #'(lambda (x) ...) ?
What does Clisp on cygwin return for just (functionp (lambda (x) (* x x))) ?
For these inputs:
(functionp '(lambda (x) (* x x)))
(functionp #'(lambda (x) (* x x)))
(functionp (lambda (x) (* x x)))
on my Linux desktop box, I get NIL, T, T from Clisp, CMUCL, SBCL,
ECL, and Allegro, while GCL returns T, T, T.
For the record,
Robert Dodier