-
-
Notifications
You must be signed in to change notification settings - Fork 148
Description
I suggest to update the following two points:
Dynamic scope is everywhere
Elisp had had optional lexical binding for a decade by now, if not longer. lexical-binding: t
is becoming the default right now, the topic is hot on emacs-devel.
With lexical-binding
set to t, scoping in Elisp feels just like CL's. Some non-variable scoping is still dynamic under the hood but that mostly implies compiled code being slower than necessary, and is basically unnoticeable to most users.
I strongly suggest something like “Dynamic scope might pop unexpectedly here and there; however, this rapidly becomes an unlikely possibility, and compiler(s) warn about it since recently”, and moving it much closer to the end of the list of differences.
There are no reader (or reader-related) functions
Not entirely true. There are reader-related functions; there is read
, for example. It's just in C and the reader is not extensible with Elisp. The phrasing may confuse people.
See also https://github.com/mishoo/elisp-reader.el I didn't try it but I think it's worthy of mentioning, e.g.: “See, however, mishoo/elisp-reader.el”