Andrei Alexandrescu:
DRY is DRY. Bloating the language is bloating the language.
To implement a typedef in library code in D perhaps you need a
well implemented __gensym__ that works correctly in presence of
separate compilation. It can generate a string that contains a
progressive number for each D module, plus a digest of the module
path and name.
Phobos contains hundreds of things, but a large percentage of
them doesn't attract the amount of critiques that Typedef has
received in many threads. This can suggest you that there is
something special in Typedef.
Sooner or later a dirty semantics will bite your ass.
Mine ain't hurting. -- Andrei
This is not surprising because you say you have not used Typedef
much in your code.
Bye,
bearophile