Emacs lisp isn't really a lisp-2. It's more of a lisp-3: the variable namespace, the function namespace, and whatever has been dumped in the symbol plist.
miniblog.
Related Posts
Phabricator does a great job displaying diffs. It has subword highlighting and puts the previous section (based on indentation) in the header, shown as `namespace llvm {`.
The moved line highlighting is a really nice touch too.
(screenshots of https://reviews.llvm.org/D71126)
Esy is a JS preprocessor that lets you define your own blocks: https://www.npmjs.com/package/esy-language
It's a macro system, but it doesn't overlap with function call syntax (unlike e.g. lisp). It makes it a little easier to spot macros, without a whole separate namespace (like foo! in Rust).
Too few languages have increment/decrement in the global namespace. I'm only aware of elisp and Clojure. It's really handy and I miss it.

