On 9/4/2011 2:17 AM, Lars T. Kyllingstad wrote:
On Sat, 03 Sep 2011 18:23:26 -0700, Walter Bright wrote:

[I also don't like it that all my code that uses std.path is now
broken.]

What do you mean by "broken"?  That it does not compile or work as
expected, or that it spits out a bunch of annoying deprecation messages?

If it is any of the former, that was not supposed to happen.  The new
std.path still contains all the functions of the old std.path and should
therefore be backwards compatible.

If the new std.path breaks existing code, I need to fix it before it is
released.  Please let me know what problems you are experiencing.

It prints out all the deprecation message. It means I'll have to go edit existing, working code to change the names.

I know that the majority wants the name changes. I know the deprecation system gives people plenty of time to edit their code.

But I think the cost of breaking existing code is much higher than many realize, and a lot of that cost will be hidden. It'll come in the form of people deciding not to use D because it is "not stable". It'll come in the form of invalidating existing libraries and modules unless someone is regularly maintaining them. It'll come in the form of invalidating the mass of books, articles, blog postings, and presentations about D, and those will never get updated. People will type in the code examples, they will fail to compile, and they'll get turned off about D.

I'll again note that I know of know successful operating system or programming language that goes around breaking existing code unless it is really, really urgent.

Camel-casing a name doesn't meet that standard. So, yes, I don't like it.

Reply via email to