Are there any default dmd optimizations
foobar
foo at bar.com
Wed Feb 27 01:39:58 PST 2013
On Tuesday, 26 February 2013 at 23:37:57 UTC, Andrei Alexandrescu
wrote:
<snip>
>
> Agreed, but it does happen often that a language feature is
> later superseded by a generalization thereof.
>
> Andrei
I agree that this does happen. The question is how the language
evolve with that in mind. Do we choose to preserve *all* previous
semantics? Do we have a proper deprecation process? etc, etc..
I think that unfortunately, the D design process is not adequate
as of yet - there is no proper deprecation process which causes
things like a "sudden death" for previously valid syntax (alias
syntax) instead of gradually deprecate it with proper
announcements *everywhere* (website, NG, ..) on the one hand and
keeping redundant special cases in the language and refusing to
change semantics (AAs) to allow for an easier path forward, on
the other hand.
So I think we agree on the spirit of things but the problems I'm
voicing are about the details or lack thereof. Where are the
guidelines describing all these issues? How to address required
semantic changes in the language? how to address syntax changes?
how to remove previously failed features or no longer needed
ones? What constitutes a feature that should be completely
removed and what should only be put on permanent deprecation
status? How all those things interact?
If we still (after a decade!) decide these based on c++ common
wisdom only than I think something is really broken here.
Previously valid D syntax is easily broken without much regard
yet we are still stuck on the comma backwards compatibility to C.
We ignore all other languages that programmers migrate from to D
and ignore their common wisdom and experience. Isn't it time for
D to become its own language instead of a leech on C++ idioms?
More information about the Digitalmars-d
mailing list