[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: commonlisp types
- To: Jamie.Zawinski <firstname.lastname@example.org>
- Subject: Re: commonlisp types
- From: Barry Margolin <barmar@Think.COM>
- Date: Fri, 2 Dec 88 11:02 EST
- Cc: email@example.com
- In-reply-to: <8812020545.AA12869@Think.COM>
Date: Fri, 2 Dec 1988 00:40-EST
From: Jamie.Zawinski <firstname.lastname@example.org>
Can someone explain the rationale behind forcing SATISFIES to
accept only function-names and not lambda expressions?
I can see that the compiler could have special knowledge about
such forms as (SATISFIES PLUSP), but CLtL says lambdas are excluded
"to avoid scoping problems."
I think this means that they didn't want to create confusion about
whether the lambda expressions produced lexical closures or not.
Someone might think that the following would work:
(defun strange-eq (x y)
(typep x '(satisfies (lambda (object) (eq object y)))))