emacs-devel
[Top][All Lists]
Advanced

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

Re: Rant - Elisp terminology is deceptive


From: Kelly Dean
Subject: Re: Rant - Elisp terminology is deceptive
Date: Sat, 24 Jan 2015 10:30:59 +0000

Stephen J. Turnbull wrote:
> Buffer-local values are global values in the usual
> sense that they are instance-wide and can be accessed in local context
> if not shadowed by let-bindings and the like.

Function parameters (or a closure's parameters and environment variables) are 
global variables in the sense that they're ‟instance-wide” (within the entire 
function or closure) and can be accessed in local context if not shadowed by 
let-bindings.

But «within an entire function or closure» isn't really instance-wide? Well 
neither is «within an entire buffer».

The global environment is the outermost one. A buffer's environment is not. 
There's only one global environment. There can be multiple buffers and multiple 
closures, each with its own environment. ‟Buffer-local” is a perfectly good 
term for buffer-locals. Calling them ‟global” would be misleading, and it's 
good that Emacs doesn't do that.

‟Global” is the right term for globals.



reply via email to

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