New names - 2.068 roundup

Mike via Digitalmars-d digitalmars-d at puremagic.com
Thu Jun 25 16:18:10 PDT 2015


On Thursday, 25 June 2015 at 21:06:38 UTC, Walter Bright wrote:
> On 6/25/2015 12:48 PM, Mathias Lang via Digitalmars-d wrote:
>> And he's right. It is really annoying to update to a new 
>> version and have
>> perfectly valid and working code breaking because someone had 
>> a nice idea.
>> Ideally, we should only ever break code that has a bug in it.
>
> I've also been willing to break code if it involves significant 
> performance, usability, or correctness improvements. Renaming, 
> though, doesn't provide that.

Deprecation is *not* breakage.  Removal is.

This isn't like final-by-default where there can be only one 
default.  We can have redundant names as long as the user can 
know why they exist (documentation comment) and which is 
preferred (deprecated attribute).

I suggest deprecation without removal (i.e. removal by Walter 
only).

The .Net Framework has had deprecated names since 2.0 (10 years 
ago) and you can still use them today and likely will be able to 
in the far future. And the fact that deprecation warnings are off 
by default in D already makes it ultra-conservative.

Mike


More information about the Digitalmars-d mailing list