On 12/10/10 1:26 AM, Andrei Alexandrescu wrote:
It's time to vote. Please vote for or against inclusion of datetime into
Phobos, along with your reasons.

Yes, it'd totally like to see this library in Phobos, but I think that we need to be aware of a few issues, mainly caused by the sheer amount of source code in a single file/module.

The first one is maintainability – if datetime.d was added to Phobos in its current form, about _a quarter of all std.* code_ (LOC-wise) would be concentrated _in a single source file_. I know that this has been discussed before, and that there is no hard limit on file/module size, but in my eyes, 32k lines in a single file are prone to get tedious. This probably isn't really a big problem though, since the code is relatively low in complexity and furthermore probably does not require an exceptionally high amount of maintenance.

In my eyes, a much more important issue is that DDoc is hardly up to the task currently. Just open the HTML page from Jonathan's archive and imagine being pointed to datetime.html#toLocalTime, and try finding out to which entity (class, struct or the module itself) this function belongs, then try getting a quick picture of what other functions are offered in the same scope, or jumping to the start or end of the docs on it.

A complete discussion would probably belong to a separate DDoc improvements thread, but for example, the »jump to« list at the top is unnecessarily cluttered by a lot of enum itmes, and what's really missing are some aids for navigating on the page, probably also internal references like in Doxygen/Javadoc and a way to divide the page into several sections (though splitting the module instead would be a better choice here, arguably).

Oh, I am not at all trying to argue against the inclusion of datetime into Phobos by the way, I just want to point out that it raises a few issues we should probably better be aware of.

Reply via email to