D Editions
Quirin Schroll
qs.il.paperinik at gmail.com
Sat Jan 18 05:28:59 UTC 2025
On Thursday, 16 January 2025 at 17:01:40 UTC, Paul Backus wrote:
> On Thursday, 16 January 2025 at 01:08:17 UTC, Quirin Schroll
> wrote:
>> This. There is something implicitly said in your post, though:
>> Medium-scale breaking changes with non-trivial migration
>> paths. For those, editions shine. A simple example might be
>> the introduction of a new keyword.
>
> "Medium" is what "large" calls itself when it doesn't want to
> admit it's gained weight. If it's disruptive enough to require
> an edition bump, it's "large."
>
> For something like a new keyword, whether it's feasible or not
> depends *entirely* on what the keyword is. For example, we just
> added [`__rvalue`][1] without an edition bump or even a preview
> switch, and nobody expects it to cause any problems. OTOH, if
> you wanted to add a `match` keyword, I do not think you could
> do it even with an edition bump.
>
> [1]: https://github.com/dlang/dmd/pull/17050
Well, `__rvalue` essentially was a keyword as all `__stuff` are
reserved.
Why we couldn’t add `match` as a keyword in an edition is beyond
me.
You can always rename your variables in old code when you decide
you’re ready for the next edition.
More information about the dip.ideas
mailing list