* karl williamson <public@khwilliamson.com> [2010-08-05 19:25]: > Aristotle Pagaltzis wrote: > >* karl williamson <public@khwilliamson.com> [2010-08-04 15:40]: > >>FWIW, I have given this some thought, and came to the > >>conclusion that Perl is almost certainly never going to > >>change the defaults, because of the backward compatibility > >>issues. > > > >Yet you *are* changing the past default right now, *in spite* > >of back compat issues… :-) > > I'm not sure I understand. The default options remain the same. > Ben made the point in your quote above that by doing this now > when we are pretty much agreed that something should be done > will cause this to likely be the last time adding a flag would > cause backward compatibility issues. If the default is not allowed to change again, then we gain nothing from `(?~:)`. Right now, the problem is that the default is changing, such that `(?-xism)` is not an accurate representation of it. This is caused by the fact that we are introducing a flag that *requires* a choice of default. What happens if we run into this situation again in the future? If the meaning of `(?~:)` is not allowed to change, then it will no longer be an accurate representation, so patterns will have to stringify to `(?~Xy:)`. And thus we get the exact same breakage that we are having now with `(?-xism)`. (Personally I would rather skip the entire discussion and train people to do ( my $re_defaults = "" . qr/ / ) =~ s/ //g; and use *that* instead of hardcoding *either* `(?-xism:)` *or* `(?~:)` *or* anything else, because that’s guaranteed to yield the right default stringification now and forever.) Regards, -- Aristotle Pagaltzis // <http://plasmasturm.org/>Thread Previous | Thread Next