On Tue, 16 Nov 2010 13:46:48 -0500, Steve Teale <steve.te...@britseyeview.com> wrote:

Steven Schveighoffer Wrote:

On Tue, 16 Nov 2010 13:16:13 -0500, Steve Teale
<steve.te...@britseyeview.com> wrote:
>
> Andrei,
>
> Maybe it is time that the structure of the standard library became more
> generalized. At the moment we have std... and core...
>
> Perhaps we need another branch in the hierarchy, like ranges... Then
> there could be a std.range module that was the gateway into ranges...
> The library could then expand in an orderly fashion, with a wider range
> of users becoming responsible for the maintenance of of different
> branches against changes in the language, not against changes in fashion.
>
> Then you could have ranges.regex, that suits you, and the people who
> were happy with the status quo, could continue to use std.regexp, which
> should continue to behave like it did in DMD2.029 or whatever it was
> when I wrote my 'legacy' code.
>
> The current system, where modules of the library can get arbitrarily
> deprecated and at some point removed because they are unfashionable, is
> very unfriendly.
>
> I recognize that you are young, hyper-intelligent, and motivated toward > fame. But there are other users, like me, who are older, but not senile,
> and have more conservative attitudes, including the desire to use code
> they wrote in the past at some point in the future.

The standard library should not have something to please everyone.  If
there is 5 different styles to do the same thing, it will be a failure.

Can you just copy std.regex from 2.029 and compile it in your project?
I.e. instead of phobos adding range branch for the new range style, you
add branch Teale for your style and copy what you like in there. Then you
have what you want (may take a little effort on your part, but then you
control the results).

Also, 2.029 is still available via download, you can still use it.

-Steve

Yes Steve, of course I can, but other much more popular languages like for instance PHP seem to do OK with the suit-everyone style.

I don't object to having multiple styles to do things, I even maintain a library (dcollections) that is not even close to the style of std.container. I just object to everything being included in the standard library. The standard library should do things one way, and if you want something different, use an add-on library.

I'm guessing you are referring to php's pcre vs posix regex? I think posix is marked as deprecated...

I am just upset that code I put a lot of effort into gets broken because somebody else does not like the style of the library.

Well, the library isn't finished. As much as I understand your pain, I also don't think phobos should be write-only. We should not be stuck with mistakes or designs of the past until we have stated the library is released, and then we can deal with backwards compatibility in a reasonable way. Until then, you shouldn't expect everything to be set in stone. Sorry if this is confusing or annoying.

That being said, if std.regexp is broken, I don't think it was intentional. In fact, in the bug report, someone mentions a one-line fix, does that solve your problem? AFAIK, regexp is not even deprecated yet, which means it should be supported. I think Andrei said as much.

Which should be preserved - style, or substance?

substance.  AFAIK, substance is preserved, or am I misunderstanding you?

-Steve

Reply via email to