On Thursday, 13 December 2018 at 09:40:45 UTC, RazvanN wrote:
"I think there’s a general consensus that @safe, pure and
immutable should be default."
It's not at all a general consensus and doing this would
literally break all the existing D code. Without discussing all
the technical aspects, this will severely impact the adoption
rate of D because it will make it very complicated for people
coming from a C/C++/Java background to accommodate with the
language. In addition, this is completely against D's liberal
philosophy where you can program however you want.
+1
The point of them not being default is that you can ignore them
if you want, and create added-value instead of proving properties
in your programs.
So a D program can start its life being crap and get better _if_
it creates any value.