On Thursday, 7 November 2013 at 20:16:46 UTC, Jonathan M Davis wrote:
If you want anything like this to happen, you'll have to convince Walter and Andrei, and I would be shocked if they were ever convinced. They want to focus on stability, not on tweaking everything in search of making the language perfect. Breaking changes - especially breaking changes on this scale - need to provide real, tangible benefits which outweigh the cost of the breakage. And
changing the @ attributes doesn't even come close.

I tend to lean towards this position with time more and more. Problem is, stuff that bothers me most in D which I'd like to change in a breaking way is not lack of some new features or re-engineering of some specific syntax. Under-explored semantics of some core language parts are most frustrating in my every-day development - like tuples or attribute defaults or symbol visibility. But changing/fixing those will yield completely different language, something like D3, it is not some incremental augmentation.

And when it comes to exiting feature set - D2 is already so much ahead of C++ that I tend to desire more stability / "industrial quality" to act as replacement right here and now. No single improvement will benefit as much as simple proof that D community can craft tool set that "just works". In that sense, any proposed addition must be either completely in style with existing language state or give really enormous benefits. Being simply good is not enough.

Of course, good stuff is still worth discussing - language design moves forward and D3 is inevitable, whatever Walter intention here is. There are already D derivatives that do experiment in that domain trying to build on D experience foundation in the very same way as D did on top of C/C++. But that is completely different story - D upstream itself must first prove itself capable of producing at least single mature language version / implementation before moving forward.

Reply via email to