On Wednesday, June 14, 2017 07:28:34 Wulfklaue via Digitalmars-d wrote: > Unless i am wrong there seem to be only one or two people > actually pushing this D3 idea...
It comes up periodically, because there's some change that someone wants that will never make it into D2. Historically, it's the response to most anyone being told that what they want won't make it into D2, and actually, it used to come up quite a bit, but it rarely comes up now. Sure, there are some changes that we'd probably make to the language if we were doing things from scratch or willing to just break every existing D program, but I think that you'd have a hard time getting folks to agree on a list of what would be changed under those circumstances, and for the most part, I think that folks will agree that it's not worth it at this point - certainly, I think that you're going to have a hard time finding any core contributors who think that starting D3 would be a good idea at this point. And I'd be shocked if anyone managed to convince Walter or Andrei that it was a good idea. Now, there are changes in Phobos which a number of us would like to see that you'll see a much greater consensus on, some of which aren't likely to be possible without breaking a lot of code (most notably, the fact that strings auto-decode to ranges of dchar), which is part of why there was a recent discussion on creating a new version of Phobos that would eventually replace the one that we have now ( http://forum.dlang.org/post/volmdaxjihbkpbtpl...@forum.dlang.org ), but even that discussion didn't exactly gain much traction, and changes that require massive breakage in Phobos are unlikely to happen, even if we'd very much like those changes, precisely because they'd cause massive breakage. It's still possible to make changes in the language and standard library without breaking everyone's code, and there's still plenty of room to make some changes which are breaking changes if they bring enough value, but there's a much greater focus on stability and avoiding code breakage than there used to be, and having the massive breakage of redoing the standard library or moving on to a new version of the language really doesn't fit in with that. And we can do quite a lot in place without such massive breakage. However, some folks are always looking for massive changes in the search of making the language perfect. So, there will likely always be occasional talk of moving on to D3, even if it is unlikely to be on the table any time soon, if ever. That being said, if you're expecting to be able to write D code and then have it compile 10 years from now with whatever the current compiler is at that time, you're likely to be disappointed. We're targetting stability, and we're better at managing change than we once were, but there are still occasional changes to the language, and even if the standard library is not undergoing massive churn, it does change somewhat over time. If you're maintaining your code and making the occasional, required adjustments when the language or library changes something that requires adjustments, then you should be just fine without having to do massive code rewrites or anything like that (and at this point, breaking changes normally involve a deprecation process so that they don't just force you to immediately change your code). But if you write your code now and try and compile it in a few years without maintaining it in the interim, then you're likely to have at least some code which won't compile anymore. - Jonathan M Davis