[phobos] next release
Jonathan M Davis
jmdavisprog at gmail.com
Thu Sep 9 17:25:26 PDT 2010
On Thursday 09 September 2010 15:12:56 Andrei Alexandrescu wrote:
> On 9/9/10 16:47 CDT, Steve Schveighoffer wrote:
> > Alternatively, we can have std.stopwatch not appear in the docs until we
> > are certain of its location.
>
> Then why add it? Most surely there won't be a module std.stopwatch.
>
> > I think not including it is not a good idea. Going by that philosophy,
> > we will have to wait until all date/time stuff is done before it's
> > included.
>
> I'm talking about a minor release - a month.
>
> > Another alternative is to call it std.xstopwatch until it's not
> > experimental anymore. At least it will be easy to search/replace later.
> >
> > Basically what we need is a mechanism to convey to the user that things
> > aren't set in stone for stopwatch. Although are we making that
> > guarantee anywhere else? I think through the last few releases, phobos
> > has had breaking changes (input ranges' save function comes to mind).
>
> std.stopwatch is a simple artifact with a simple charter. I don't think
> we need to overengineer this.
>
>
> Andrei
Just so you know, I fully expect that the datetime code that I've been working
on will be done in less than a month. It'll be at least a week (probably closer
to two), but it certainly won't be in the range of a month. Now, how many
changes will be required after it's reviewed, or whether it will be accepted at
all, is another matter. But it shouldn't be all that much longer before I'm
done.
Personally, I don't see any problem in having stopwatch in std.datetime. My code
will certainly make for a large module in terms of the number of bytes that it
is, but a large portion of that is unit tests and documentation. I would fully
expect that in the long run other modules such as std.container will be far
larger in terms of the number of types and functions in it (I have no idea about
the size of the file though - I have a lot of unit tests). I would expect that
stopwatch could fit in there just fine. Certainly, I don't see anywhere is that
it's going to go under the current scheme.
It may be, however, that we're going to have to break down and allow some sort
of package hierarchy at some point rather than having everything directly in
std. Still, I don't know that we'd want a module like stopwatch which is
essentially for one struct. If we end up with many single-purpose modules like
that though, I think that we're definitely going to want some sort of module
hierchary for at least some of them.
Regardless, I'd say that we want to avoid creating modules - or any code in
general for that matter - which is not likely to stick around for long. It would
likely be better practice to either figure out exactly where it's going to go and
put it there or to simply have it not listed in the online docs until it is
where it's likely to be permanently.
- Jonathan M Davis
More information about the phobos
mailing list