On Mon, Jun 19, 2017, 5:21 AM Nicolas Goaziou <m...@nicolasgoaziou.fr>
wrote:

>   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.
>
> 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.
>

Here are some of my observations on the topic of lexical-binding by
following emacs-devel closely for the past few years.

It has become a norm to write new elisp code that is lexical-binding
friendly.

I have seen this movement started on emacs master for a long time now
(since 2011), and still there is a continuous effort to enable
lexical-binding on more and more emacs core files:
http://git.savannah.gnu.org/cgit/emacs.git/log/?qt=grep&q=lexical-binding

The same applies to Magit and many other external emacs packages (
https://github.com/search?q=lexical-binding+language%3A"Emacs+Lisp"&type=commits
).

The idea is that once almost all the elisp code out there is
lexical-binding compatible, the default of emacs can be changed to that and
dynamic binding can be obsoleted.

I have also seen how a lexically bound package is more portable as there is
no implicit reliance on global variables from multiple other packages.

> --

Kaushal Modi

Reply via email to