Emacs Lisp was created in the 1980s. The Lisp dialog that Emacs (Richard Stallman) was most familiar with at that time was MIT Maclisp, and Emacs Lisp is very similar to it. He used dynamic change of variables and did not have lexical closures or tail recursion optimization, and Emacs Lisp is the same.
Emacs Lisp is very different from Schema. The biggest difference is that Scheme is lexically limited, but it was recently added to Emacs Lisp and needs to be included for each file (by placing it ;;; -*- lexical-binding: t -*-on the first line), because doing this by default can cause a lot of incompatibilities.
There was some work on replacing Emacs Lisp with Guile, Schema dialogs. But it is not clear whether he will succeed.
source
share