Subject: Re: Lambda calculus and it relation to LISP
From: Erik Naggum <>
Date: 09 Oct 2002 14:58:29 +0000
Newsgroups: comp.lang.lisp,sci.math,comp.emacs
Message-ID: <>

* David Kastrup
| How does one create ad-hoc function objects in more standard variants of
| Lisp?

  You got to be kidding.  The only purpose of the horrid complexity of

(lambda (f g) `(lambda (n) (,g (funcall ,f ,f ,g) n)))

  is to capture the values of the `f´ and `g´ bindings.  In Common Lisp, we
  have closures and write

(lambda (f g) (lambda (n) (g (funcall f f g) n)))

| Emacs has no problem with that.

  Emacs Lisp has serious problems with closures.  That is why you think you
  need this nonsense to begin with.

  One question remains: Why are you programming in Emacs Lisp while
  claiming to be programming in Lisp without being aware of the serious
  limitations of Emacs Lisp?  I mean, you /got/ to be kidding when you
  imply that you do not know that every other modern Lisp has closures.

Erik Naggum, Oslo, Norway

Act from reason, and failure makes you rethink and study harder.
Act from faith, and failure makes you blame someone and push harder.