Subject: bug#11782: closed (Re: bug#11782: 24.1; closure is not self-quoting)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 29 May 2013 07:08:03 +0000

Your bug report

#11782: 24.1; closure is not self-quoting

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
11782: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11782
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#11782: 24.1; closure is not self-quoting
From: Christopher Schmidt <[email-masked]>
To: [email-masked]
Date: Wed, 29 May 2013 08:05:38 +0100 (BST)
List-Id: <debbugs-submit.debbugs.gnu.org>

Stefan Monnier <[email-masked]> writes:
>     In Emacs Lisp, such a list is valid as an expression--it evaluates
>     to itself.
>
> Clearly this doc needs to be fixed since it confuses lambda
> expressions and lambda values and while this conflation mostly worked
> in dynamic binding, it does not work any more in the presence of
> closures.  I just installed the patch below.

Thanks a lot!

        Christopher

Subject: 24.1; closure is not self-quoting
From: Christopher Schmidt <[email-masked]>
To: [email-masked]
Date: Mon, 25 Jun 2012 19:47:02 +0100 (BST)
List-Id: <debbugs-submit.debbugs.gnu.org>

I am not exactly sure if this is a bug, a feature or something that is
just undefined.

    (funcall (eval (eval '(let ((var)) (lambda ())))))

works fine, whereas

    (funcall (eval (eval '(let ((lex-var)) (lambda ())) t)))

does not work.

Backtrace:

    Debugger entered--Lisp error: (void-function closure)
      (closure ((lex-var) t) nil)
      eval((closure ((lex-var) t) nil))
      (funcall (eval (eval (quote (let ((lex-var)) (lambda nil))) t)))
      eval((funcall (eval (eval (quote (let ((lex-var)) (lambda nil))) t))))

I am on GNU Emacs 24.1.1 (x86_64-unknown-linux-gnu, GTK+ Version
2.24.10).

        Christopher