emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

let vs. buffer local bindings


From: Kim F. Storm
Subject: let vs. buffer local bindings
Date: 10 May 2002 16:21:07 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2.50

Gareth Owen <address@hidden> has found a peculiar
interference between let and buffer local bindings.

Does anyone care to comment on the following result:

First try evalling:

(progn
  (make-variable-buffer-local 'foo)
  (setq-default foo 1)
  (list foo
        (let ((foo 2) (buf (generate-new-buffer "baz")))
          (set-buffer buf) foo)
        (let ((foo 3) (buf (generate-new-buffer "baz")))
          (set-buffer buf) foo)
        (let ((foo 4) (buf (generate-new-buffer "baz")))
          (set-buffer buf) foo)))

which produces what seems to be correct:

  (1 2 3 4)


But now eval this:

(progn
  (setq foo 0)
  (list foo
        (let ((foo 2) (buf (generate-new-buffer "baz")))
          (set-buffer buf) foo)
        (let ((foo 3) (buf (generate-new-buffer "baz")))
          (set-buffer buf) foo)
        (let ((foo 4) (buf (generate-new-buffer "baz")))
          (set-buffer buf) foo)))

which produces what seems to be wrong:

  (0 1 3 4)


-- 
Kim F. Storm <address@hidden> http://www.cua.dk




reply via email to

[Prev in Thread] Current Thread [Next in Thread]