On Thursday, 24 December 2015 at 16:37:29 UTC, Jacob Carlborg
On 24/12/15 02:08, Walter Bright wrote:
This has resurfaced on Reddit:
In the comments, about the cluttered syntax. For the
attributes, due to legacy reasons, it seems like D got all the
defaults wrong. System instead of safe, mutable instead of
immutable, not pure instead of pure and so on. We might not be
able to get rid of any attributes but if some of these defaults
were different perhaps it would not be necessary to use so many
attributes all the time.
I know that many here don't agree but personally I think the
language could have less syntax it had AST macros. Some syntax
that is built-in now could be moved to library code in the form
I agree. As we all know, these choices have much to do with
trying not to disturb all the welcome people from C/C++. But now
that D is becoming a more self-confident language, and a larger
percentage of newcomers to D have other backgrounds than C/C++,
it is becoming increasingly important to have the language "do
the Right Thing" from the outset.
By now the former C/C++ programmer has to learn an entirely new
language, as compared to 5 or especially 10 years ago, when D
could (well, at least sarcastically) be described as just another
Dialect of C.
Today, D is a proud and strong, and not even a new, language, and
the Default choices of system/safe, (im)mutable, (not)safe, etc.,
should be based only on choices that are obvious when we look at
D now and in the foreseeable future. Not on what the past was.