DLF September 2023 Planning Update
Mike Parker
aldacron at gmail.com
Wed Nov 15 05:27:40 UTC 2023
On Wednesday, 15 November 2023 at 02:27:42 UTC, Mike Shah wrote:
> I just want to echo Steve's sentiment, that it should be easy
> for new (and old) D users to start up a project without
> worrying about editions. Reducing friction is incredibly
> important for adoption and usage. If the library writer
> specifies the 'edition' within their own module and it's
> totally encapsulated, that seems fine -- I think that is what I
> understand from the editions proposal (and if they don't
> specify the edition, it defaults to whatever the compilers
> default edition is).
It's just like any other language feature you have to learn. The
documentation will be clearly divided by edition. You'll have one
section for the base language (the default edition) and one for
each subsequent edition. You can jump in an use the default
language without caring about editions. Then when you want to
learn more, say sumtypes and tuples from edition N, the
documentation, tutorials, and example code you see should make it
very clear that you need to specify edition N. And the
documentation for edition N will explain all the changes that
edition makes.
If someone misses all of that and tries to use tuples without
specifying edition N, the compiler should be able to tell them
what the problem is, how to solve it (annotate your module
declaration with `@edition(N)`), and provide the URL to the
relevant documentation.
The problem with changing the default for each compiler version
means in effect there is no default, and downloading any new
version means potential breakage that requires extra steps to
fix, whether you're a beginner or not. We want to eliminate the
need for extra steps.
More information about the Digitalmars-d-announce
mailing list