From: Thierry Volpiatto <thierry.volpiatto@gmail.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: emacs-devel@gnu.org
Subject: Re: lexical-binding questions
Date: Sat, 05 May 2012 17:57:40 +0200 [thread overview]
Message-ID: <87y5p64o3v.fsf@gmail.com> (raw)
In-Reply-To: <jwvlil63gm9.fsf-monnier+emacs@gnu.org> (Stefan Monnier's message of "Sat, 05 May 2012 09:26:32 -0400")
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> it seem C-M-x is not working as expected in a `lexical-binding' enabled
>> buffer:
>
>> #+BEGIN_SRC emacs-lisp
>> ;; -*- lexical-binding: t -*-
>
>> (defun foo ()
>> (declare (special bar))
>> (let ((bar 2)
>> (baz 3))
>> #'(lambda () (+ bar baz))))
>
>> ;; I expect this:
>
>> ;; (funcall (foo))
>> ;;=>Symbol's value as variable is void: bar
>
>> #+END_SRC
>
>> However, (funcall (foo)) return 5 until I byte-compile and load the
>> file.
>
> What makes you think this has something to do with C-M-x?
Nothing, I was just saying the evaluation of function is not working as
expected, i.e the behavior of the function is different if one use C-M-x
or if one compile/load code.
> AFAICT it's just a difference between interpreted and compiled code,
> because CL's (declare (special bar)) has not been adapted to
> lexical-binding.
Now we have lexical-binding in Emacs, it could be nice to implement the
declare features of CL. (inline too)
>> So my question is how do you evaluate such code when working in a
>> `lexical-binding' enabled buffer?
>
> You don't use (declare (special bar)).
Of course.
Thanks.
--
Thierry
Get my Gnupg key:
gpg --keyserver pgp.mit.edu --recv-keys 59F29997
next prev parent reply other threads:[~2012-05-05 15:57 UTC|newest]
Thread overview: 103+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-05 6:30 lexical-binding questions Thierry Volpiatto
2012-05-05 6:45 ` Thierry Volpiatto
2012-05-05 8:16 ` BEGIN_SRC..END_SRC (was: lexical-binding questions) Eli Zaretskii
2012-05-05 8:39 ` BEGIN_SRC..END_SRC Tom Rauchenwald
2012-05-05 8:54 ` BEGIN_SRC..END_SRC Eli Zaretskii
2012-05-05 13:38 ` BEGIN_SRC..END_SRC Bastien
2012-05-05 17:02 ` BEGIN_SRC..END_SRC Eli Zaretskii
2012-05-06 16:03 ` BEGIN_SRC..END_SRC Bastien
2012-05-06 16:46 ` BEGIN_SRC..END_SRC Eli Zaretskii
2012-05-06 17:03 ` BEGIN_SRC..END_SRC Lars Magne Ingebrigtsen
2012-05-05 14:35 ` BEGIN_SRC..END_SRC Drew Adams
2012-05-05 15:10 ` BEGIN_SRC..END_SRC Antoine Levitt
2012-05-05 15:57 ` BEGIN_SRC..END_SRC Drew Adams
2012-05-05 17:00 ` BEGIN_SRC..END_SRC Peter Münster
2012-05-05 17:35 ` BEGIN_SRC..END_SRC Drew Adams
2012-05-05 21:38 ` BEGIN_SRC..END_SRC John Wiegley
2012-05-07 2:25 ` BEGIN_SRC..END_SRC Ted Zlatanov
2012-05-07 6:23 ` BEGIN_SRC..END_SRC Miles Bader
2012-05-07 9:37 ` BEGIN_SRC..END_SRC Thien-Thi Nguyen
2012-05-06 14:17 ` BEGIN_SRC..END_SRC Ted Zlatanov
2012-05-05 15:48 ` BEGIN_SRC..END_SRC Yann Hodique
2012-05-05 16:43 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-05 17:12 ` BEGIN_SRC..END_SRC Yann Hodique
2012-05-07 8:57 ` BEGIN_SRC..END_SRC Julien Danjou
2012-05-07 9:46 ` BEGIN_SRC..END_SRC Yann Hodique
2012-05-05 17:36 ` BEGIN_SRC..END_SRC Drew Adams
2012-05-05 19:48 ` BEGIN_SRC..END_SRC Martyn Jago
2012-05-05 20:00 ` BEGIN_SRC..END_SRC Drew Adams
2012-05-07 5:44 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-07 14:23 ` BEGIN_SRC..END_SRC Wolfgang Jenkner
2012-05-08 4:08 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-08 7:37 ` BEGIN_SRC..END_SRC Bastien
2012-05-08 11:41 ` BEGIN_SRC..END_SRC Juanma Barranquero
2012-05-08 12:17 ` BEGIN_SRC..END_SRC Stefan Monnier
2012-05-08 14:32 ` BEGIN_SRC..END_SRC Andreas Röhler
2012-05-09 1:23 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-09 17:31 ` BEGIN_SRC..END_SRC Stefan Monnier
2012-05-09 0:47 ` BEGIN_SRC..END_SRC Ted Zlatanov
2012-05-09 3:50 ` BEGIN_SRC..END_SRC Miles Bader
2012-05-09 11:35 ` BEGIN_SRC..END_SRC Ted Zlatanov
2012-05-09 12:23 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-09 13:43 ` BEGIN_SRC..END_SRC Lars Magne Ingebrigtsen
2012-05-09 14:57 ` BEGIN_SRC..END_SRC Eric Schulte
2012-05-09 17:08 ` BEGIN_SRC..END_SRC Yann Hodique
2012-05-09 16:06 ` BEGIN_SRC..END_SRC Eric Schulte
2012-05-09 18:20 ` BEGIN_SRC..END_SRC Yann Hodique
2012-05-09 16:30 ` BEGIN_SRC..END_SRC Eric Schulte
2012-05-09 18:44 ` BEGIN_SRC..END_SRC Yann Hodique
2012-05-10 7:44 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-10 7:28 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-10 7:59 ` BEGIN_SRC..END_SRC Yann Hodique
2012-05-10 12:35 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-10 13:28 ` BEGIN_SRC..END_SRC Yann Hodique
2012-05-10 13:51 ` BEGIN_SRC..END_SRC Miles Bader
2012-05-15 3:30 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-10 15:21 ` BEGIN_SRC..END_SRC Davis Herring
2012-05-15 3:56 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-10 9:02 ` BEGIN_SRC..END_SRC René Kyllingstad
2012-05-10 13:05 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-10 13:55 ` BEGIN_SRC..END_SRC René Kyllingstad
2012-05-15 3:52 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-16 14:00 ` BEGIN_SRC..END_SRC Ted Zlatanov
2012-05-09 13:52 ` BEGIN_SRC..END_SRC Tassilo Horn
2012-05-09 17:44 ` BEGIN_SRC..END_SRC Tassilo Horn
2012-05-09 17:33 ` BEGIN_SRC..END_SRC Stefan Monnier
2012-05-09 4:45 ` BEGIN_SRC..END_SRC Eli Zaretskii
2012-05-09 6:28 ` BEGIN_SRC..END_SRC Tassilo Horn
2012-05-09 9:30 ` BEGIN_SRC..END_SRC Peter Münster
2012-06-08 0:20 ` BEGIN_SRC..END_SRC Lars Magne Ingebrigtsen
2012-05-09 17:36 ` BEGIN_SRC..END_SRC Stefan Monnier
2012-05-10 0:56 ` BEGIN_SRC..END_SRC Miles Bader
2012-05-16 14:51 ` BEGIN_SRC..END_SRC Ted Zlatanov
2012-05-16 13:05 ` BEGIN_SRC..END_SRC Eric Schulte
2012-05-16 15:17 ` plain-text markdown handler for Gnus (was: BEGIN_SRC..END_SRC) Ted Zlatanov
2012-05-16 14:21 ` plain-text markdown handler for Gnus Eric Schulte
2012-05-16 16:29 ` Ted Zlatanov
2012-05-06 14:15 ` BEGIN_SRC..END_SRC Ted Zlatanov
2012-05-06 14:18 ` BEGIN_SRC..END_SRC Lennart Borgman
2012-05-06 14:33 ` BEGIN_SRC..END_SRC Alan Mackenzie
2012-05-06 14:43 ` BEGIN_SRC..END_SRC Lennart Borgman
2012-05-06 18:57 ` BEGIN_SRC..END_SRC Ted Zlatanov
2012-05-06 23:20 ` BEGIN_SRC..END_SRC Lennart Borgman
2012-05-07 2:21 ` BEGIN_SRC..END_SRC Ted Zlatanov
2012-05-07 9:56 ` BEGIN_SRC..END_SRC Lennart Borgman
2012-05-07 11:04 ` BEGIN_SRC..END_SRC Stephen J. Turnbull
2012-05-05 13:29 ` lexical-binding questions Stefan Monnier
2012-05-05 17:59 ` Thierry Volpiatto
2012-05-06 0:08 ` Miles Bader
2012-05-06 2:43 ` Stefan Monnier
2012-05-06 6:00 ` Thierry Volpiatto
2012-05-05 13:26 ` Stefan Monnier
2012-05-05 15:57 ` Thierry Volpiatto [this message]
2012-05-07 15:19 ` Stefan Monnier
2012-05-07 15:39 ` Drew Adams
2012-05-15 6:40 ` egnarts-ms
2012-05-15 13:55 ` Stefan Monnier
2012-05-14 3:57 ` egnarts-ms
2012-05-14 4:55 ` Stefan Monnier
2012-05-14 17:09 ` Johan Bockgård
2012-05-15 17:54 ` egnarts-ms
2012-05-15 20:14 ` Stefan Monnier
2012-05-15 22:59 ` Johan Bockgård
2012-05-16 2:05 ` Stefan Monnier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87y5p64o3v.fsf@gmail.com \
--to=thierry.volpiatto@gmail.com \
--cc=emacs-devel@gnu.org \
--cc=monnier@iro.umontreal.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).