On Wednesday, 23 February 2022 at 10:01:21 UTC, Paolo Invernizzi wrote:
>I strongly agree with you. Cleaning-up the language design (bytes/string, print/print()) is always a winning move.
Indeed. Also, it is much easier to upgrade a language that is statically typed. In my experience the Python 2 to Python 3 transition was a relatively smooth ride, and it can be made even smoother for a statically typed language.
For D specifically, you can just have a version 2 and a version 3 front end use the same IR/backend and allow both version 2 and version 3 code in the the same executable.
(I have implemented "a < b < c" in an experimental extensions of the D compiler. It was easy to do, and isn't even a breaking change.)