On 1/13/2019 9:31 PM, Paul Backus wrote:
Scheme is probably the language that takes this idea of a minimal "core
language" with powerful metaprogramming facilities the furthest, and the result
is a fragmented ecosystem that makes writing portable, non-trivial programs
close to impossible. (See "The Lisp Curse" .)
When something like an object system is made part of the language (or at the
very least, the standard library), it becomes a focal point  that the
community can coordinate around. Due to the diverse, distributed nature of any
programming-language community, trying to coordinate through explicit
communication is not really a viable option, so having these kinds of focal
points is very important if we want to be able to work together on anything.
Interesting cites, which provide a basis for why I've opposed AST macros, and
why Ddoc and unittest are builtin (and a few other things).
Also, before std::string came along in C++, everyone invented their own string
class, and as a result, nobody could share code.