Zefram <zefram@fysh.org> writes: > In discussing (on #p5p) possible new operators, we ran into the > issue that the obscure ?PATTERN? syntax gets in the way of most uses > we could potentially make of the question mark. It was proposed > that we could deprecate that syntax to reclaim the question mark. > Attached patch does so. It leaves the match-once semantics still > available through m?PATTERN?. Just an opinion from a user: I never used the pattern but I have read it so often in any kind of manuals or blogs (how were they called 10 years ago?) or auxiliary modules (think Emacs modes) in the last 10 years that I expect thousands of modules and scripts out there using it *somehow*. And remember the trouble on 5.12 release when removing perl4 libs. Perl4! [sic]. With 5.12 I even struggled with trivial deprecations like “defined %hash”. I also learned to struggle with other languages that make deprecations all the time, which makes deploying applications a mess and made this other language completely unusable from an administration point of view. I don't want to see people say this about Perl. So I learned the high value of Perl's strong backwards compatibility. And that's just a single story from me (just a pseudo admin for some weeks), think of 1 million real overloaded administrators out there. The easiness how to fix a deprecation is *not* a decision criteria for a deprecation. It's simply impossible to investigate deprecations in millions of foreign lines of code. Code that comes in via 20 levels of dependencies. Code by authors that don't even live anymore or fell of the net. Fixes that already overworked admins would have to apply in their own automatic setup scripts that accumulated over decades and are a maintenance nightmare on its own. Monkey patching, distroprefs, they just don't have time to fiddle with that. It's simply a horror burden. We should not put it on the users or administrators. Never. I would even accept any nastyness of new syntax if it helps avoiding deprecations. Even forgetting a new feature *at all* just due to syntax conflicts would be ok for me. Backwards compatibility is one of Perl's strongest meta features. It helps it to survive because Perl Just Works(tm). It even helps to argue on Perl6 because there is always the stable big brother to the weak little sister one can refer to. Everything known breaks in Perl6, how can it survive if Perl5 also starts breaking? (So, Larry, if you read me, please don't support deprecations in Perl5. :-)) Please avoid deprecations. Always. Thanks. Kind regards, Steffen -- Steffen Schwigon <ss5@renormalist.net> Dresden Perl Mongers <http://dresden-pm.org/>Thread Previous | Thread Next