emacs-devel
[Top][All Lists]
Advanced

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

Re: Tabs are ready? -> Let us give a definition of tabs.


From: Tom Tromey
Subject: Re: Tabs are ready? -> Let us give a definition of tabs.
Date: Wed, 15 Feb 2012 13:35:54 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.93 (gnu/linux)

>>>>> "Nix" == Nix  <address@hidden> writes:

Nix> See, the intuitive definition of buffer-locals would have them nesting
Nix> just underneath the global scope, so they would never ever supplant let
Nix> bindings. I can't imagine anyone actually wanting the current semantics:
Nix> they are purely an implementation artifact.

I can't imagine it either; but at the same time, changing anything seems
dangerous, especially given that the current behavior is explicitly
documented.

Nix> Can you recall any elisp code that establishes let bindings, switches
Nix> buffers, then operates under the assumption that some or all of its let
Nix> bindings or parameters may have changed?

I can't recall any, but I don't think that is a reasonable test.

Nix> More worryingly, if you choose the wrong name for your buffer-local
Nix> variable, parameters and local bindings will smash it out of hand, with
Nix> no warnings at all. *This* is easy to contrive a test for: just try
Nix> assigning a local value to a buffer-local variable named 'start': it
Nix> doesn't even survive a round of C-h v and quit-window!

More code should use lexical binding; or we should have CL-style
packages; or both :-)

Tom



reply via email to

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