Bastien Guerry <b...@gnu.org> writes:

> Maybe I miss something: when I create a file with C-x C-f whatever.el RET
> it does not use a template or does not get created with lexical
> binding on.
> What are you referring to when you say "every Elisp file created
> activates it"?

It requires to activate `autoinsert' feature, which is bundled with

>   * Dynamic Binding::         The default for binding local variables in 
> Emacs.

OK. I stand corrected. Let me rephrase this then:

  There is absolutely no drawback in using lexical binding. Since Org
  9.0, it _is_ the default for Org core: almost every Org library
  activates it nowadays. Please, pretty please, don't suggest it is

> Whether lexical binding is a good default or not is another question,
> and whether lexical-binding:t makes sense in a file with no binding
> yet another, third one.

Let's consider this a non-starter. 

Again, lexical binding has _no_ drawback and makes life of developers
easier (e.g., code is more readable, compiler reports more errors).
I moved almost every library in Org to lexical binding, some changes
being trivial, some painful, for a reason. I don't want to do a step
backward in that area without a very strong reason–to tell the truth,
even a strong reason wouldn't convince me.

In particular, I don't want to introduce scoping bugs in a library
because, at its creation, lexical binding wasn't activated and nobody
cared to check the first line of the file before introducing a dubious

I sincerely hope we can agree on the topic, hic et nunc, and move on to
actual coding.


Nicolas Goaziou

Reply via email to