Subject: Re: LISP
From: rpw3@rpw3.org (Rob Warnock)
Date: Mon, 11 May 2009 21:07:10 -0500
Newsgroups: comp.lang.lisp
Message-ID: <UMednRXCu8dTRJXXnZ2dnUVZ_uqdnZ2d@speakeasy.net>
Raffael Cavallaro  <raffaelcavallaro@gmail.com> wrote:
+---------------
| anonymous.c.lis...@gmail.com wrote:
| > When evaluating a lisp program you apply the car to the (evaluated)
| > cdr, right?
| > >  (((lambda (x) (lambda (y) (+ x y))) 3) 4)
| > Does not do this (it (appears to) apply the evaluated car, to the
| > (evaluated?) cdr).
| 
| Only if you see the lambda expression as a form to be evaluated rather
| than the "name" of an otherwise anonymous function. See Kent Pitman's
| post wrt this up thread.
+---------------

Whereas I for one *do* "see the lambda expression as a form to be
evaluated" rather than a name!! [See my reply to Kent's up thread.]

But also being a Lisp2 [or LispN] proponent, it also wouldn't bother
me if one had to write the above this way in CL:  ;-}

    (funcall (funcall (lambda (x) (lambda (y) (+ x y))) 3) 4)

Conversely, it also wouldn't bother me if all of the major CL
implementations started allowing other arbitrary function-value-returning
forms in the CAR of a function application form [in addition to
LAMBDA expressions]. It's just more mud for the ball...  ;-}


-Rob

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607