std.uni vs std.unicode and beyond?
Jonathan M Davis
jmdavisProg at gmx.com
Thu May 23 01:49:00 PDT 2013
On Thursday, May 23, 2013 09:15:22 Jacob Carlborg wrote:
> > So, the question is whether it's worth making people change their code
> > sometime between when we make the change and when std.uni finally goes
> > away. And I don't think that making people change their code is worth it
> > regardless of how gradual it is. std.uni is not as good a name as
> > std.unicode, but it's just not worth forcing people to change their code
> > in order to fix it. If we keep trying to tweak the names of modules and
> > functions and whatnot, we'll never be in a state where people can rely on
> > their code compiling across compiler versions. Tweaking some stuff is
> > necessary, and we did a lot in the past to fix symbol names, but we've
> > pretty much stopped doing that, and we have to draw the line somewhere.
>
> How about drawing the line after we have gone through and cleaned up all
> modules that haven't gone through the review queue.
Even if we agreed that we wanted to do that, how is that realistically going
to happen? Pretty much the only reason that as many of Phobos' names have been
fixed as have been is because I took the time a couple of years ago to clean up
a lot of the names so that they followed the naming conventions. Some changes
were done by others, but the vast majority of it was me. If I hadn't taken the
time to do that, it wouldn't have happened. And in all that time, no one else
has taken the time to try and figure out what I missed and get that fixed. At
best, some folks have fixed a few symbol names here and there. It's just not
realistic to expect that we're going to be able to go through and fix every
little naming detail in Phobos at this point. And as time passes, the cost of
making the changes goes up, because the amount of code written using the old
names increases. There was plenty of screaming about names being changed when
I did it before. It would likely be even worse now, and the longer it took to
actually find and fix every naming convention violation in Phobos, the more code
which would be written using the old names and would break when we made the
changes.
I tried to fix all of the naming problems in Phobos previously with the idea
that we'd fix them all and then move on, and I got a large portion of them
fixed, but I didn't get them all, and I think that it's past the time when it's
reasonable to do so. There are too many people pushing for stability, and the
lack of perceived stability is one of D's biggest detractors right now
(regardless of what our actual level of stability is). Walter and Andrei in
particular are of the opinion that the ROI on name changes at this point is
too low for it to be worth it. Sure, aesthetically, it would be nice to fix
them all, but at some point, we have to just move on and live with what we
have. Fortunately, _most_ of it has been fixed already, and the biggest
remaining offenders are modules that should probably be replaced wholesale
anyway (e.g. std.socket), so they may get fixed if the ROI for replacing such
modules is high enough (in which case, the fixing of names is a bonus which
comes along with fixing something which actually _does_ have a ROI for changing
it).
I understand why people want changes like this (and to some extent, I agree),
but I think that if they really wanted them, they should have pushed for them
and created pull requests for them long before now.
- Jonathan M Davis
More information about the Digitalmars-d
mailing list