Splitting std.typecons [Was: Re: RFC: std.sumtype (adding sumtype to Phobos)]
Paul Backus
snarwin at gmail.com
Wed Nov 25 16:22:31 UTC 2020
On Wednesday, 25 November 2020 at 16:02:01 UTC, Petar Kirov
[ZombineDev] wrote:
>
> FWIW, I'd prefer not to split `std.typecons` into independent
> modules like `std.tuple`, `std.nullable`, `std.unique`, etc.,
> but as as a package containing those modules:
> `std.typecons.tuple`, `std.typecons.nullable`,
> `std.typecons.unique`. So sumtype could continue to leave in a
> single module, but under the `std.typecons` package:
> `std.typecons.sumtype`. A few years ago we split std.algorithm
> like that and this didn't breaking any existing code as far as
> I remember, as we used `public import`s for backward
> compatibility.
I just don't see any reason for the extra level of nesting. The
module name `std.typecons.tuple` doesn't convey any more
information than `std.tuple`. Are we saving the name `std.tuple`
for something else? Are we planning on having multiple `tuple`
modules in Phobos, such that we'll need to distinguish between
`std.typecons.tuple` and `std.something_else.tuple`?
We can (and should, of course) use public imports for backward
compatibility regardless of what we name the new modules.
More information about the Digitalmars-d
mailing list