removal of cruft from D

Travis Boucher boucher.travis at gmail.com
Sat Nov 21 06:24:41 PST 2009


Nick Sabalausky wrote:
> "Travis Boucher" <boucher.travis at gmail.com> wrote in message 
> news:he7apn$2cru$1 at digitalmars.com...
>> Yigal Chripun wrote:
>>> Based on recent discussions on the NG a few features were 
>>> deprecated/removed from D, such as typedef and C style struct 
>>> initializers.
>>>
>>> IMO this cleanup and polish is important and all successful languages do 
>>> such cleanup for major releases (Python and Ruby come to mind). I'm glad 
>>> to see that D follows in those footsteps instead of accumulating craft 
>>> like C++ does.
>>>
>>>
>>> As part of this trend of cleaning up D before the release of D2, what 
>>> other features/craft should be removed/deprecated?
>>>
>>> I suggest reverse_foreach and c style function pointers
>>>
>>> please add your candidates for removal.
>>>
>>>
>> Make version() statements case insensitive, although I guess that would be 
>> addition and not removal.  Either that, or add the common cases for all 
>> reserved version keywords (or at least some consistency, linux and 
>> FreeBSD).
> 
> Yes! Capitalization consistency in the predefined versions! If it needs to 
> be worded as a "removal", then "Remove version's capitalization 
> inconsistencies" ;). The current state of that is absolutely ridiculous, and 
> frankly, a real PITA ("Ok, I need to version for Blah OS...now what random 
> capitalization did Walter chose to use for that one again...?"). I don't 
> care about that change breaking existing code: For one thing, it's D2, it's 
> not supposed to be stable yet, and secondly: Just say "with this release, 
> grep all your code for "version" and update your capitalizations", or, 
> better yet, depricate any use of the old names as errors, and just get the 
> damn issue fixed already!
> 
> 


In alot of places, I think he tried to use GCC's capitalization.  It is 
implementation defined, which makes sense since some implementation 
target different things.  However, I think the specs should say either 
'version statements are not case sensitive' or 'implementation-defined 
versions much all be in (lower|UPPER) case'.



More information about the Digitalmars-d mailing list