On Monday, 14 January 2019 at 07:50:32 UTC, Walter Bright wrote:
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
Also, before std::string came along in C++, everyone invented
their own string class, and as a result, nobody could share
This is exactly the argument to get a database driver
(mysql,postgres...) and probably a webserver in std.
But to avoid getting std.lib to big, the D Foundation might adopt
some third party libs as core libraries, so they get maintained
within the D Foundation Git account to make them somehow official.
We are now approaching the 1500 Dub package, and the ecosystem
becomes more and more complex.
(https://code.dlang.org/ 1482 packages: The search for mysql now
returns 23 packages. Please tell me which to use for the back
end, of your own vibe.d app. I give you 5 minutes...:-)