On Friday, 24 August 2018 at 22:04:49 UTC, H. S. Teoh wrote:
I don't know how to reconcile these two. Perhaps if we had the
manpower, we could maintain older versions for long enough to
allow users to gradually rewrite to work with newer compilers,
while the development branch can be bolder in making breaking
changes that ultimately will result in a better, cleaner
language. But I doubt we have the kind of manpower it takes to
maintain something like that.
In theory, it should be done so that there would be a longer-term
unstable and and stable major branches.
Stable major branch would behave mainly like we do now: new
features allowed and breaking changes also allowed, but only with
proper deprectation processes.
In unstable major branch, you would do breaking changes, like
removing autodecoding and exception throwing on general-purpose
Phobos functions. No additional features here unless they depend
on the breakages, to ease transitioning between the two.
Thwy would be merged like perhaps every ten versions.
I'm not saying this would necessarily work, but in theory it's
the only way to get rid of historical babbage without becoming a
moving target.