On Friday, 24 October 2014 at 14:23:04 UTC, Shriramana Sharma via Digitalmars-d-learn wrote:
As for the cases when serious changes to the grammar are needed, I feel the Py2 to Py3 transition is a good example to emulate. Lots of cleanup happened in Py3, Py2 is still supported, and there exists tools like 2to3 and six (https://pypi.python.org/pypi/six) to help
people bridge the gap.

I agree that "@"-stuff is trivial, but I don't think Python sets a good example. The codebase is basically divided in two, libraries have to support both, and I think they should have changed more if going to the trouble.

In essence you should either change so little that upgrading is trivial or you should improve the language enough to ensure that all new projects choose the improved language.

However, Python is in widespread use on a fairly massive scale and is dynamic, which makes breaking very serious as it happens at runtime.

D could with little trouble undergo a massive change where the static type system catch the issues and call it D3.

The real problem is that there is no design for a D3 rooted in a semantic model that is clean. Such a transition would require a solid formal specification where you eliminate all weird aspects.

But I don't think anyone is working on a new spec? I am willing to help out if other people are interested.

Reply via email to