sometimes even normally reasonable and otherwise knowledgeable people can slip into "troll tactics"
"Slip" is very much a good way to describe it. I had thought of "why not give bareword filehandles lexical scope, too?" as a solution to the problems of file-scope lexicals being effectively global variables. I had a "lightbulb moment" and rushed to write it down in a somewhat coherent form. The root node of this discussion was the result.
To my knowledge at this point, there is no proposal to remove bareword filehandles
I will answer this by quoting more from Announcing Perl 7, the original announcement:
What’s disappearing?
[...] There are some things you should learn to live without, even in Perl 5 land. These are the likely candidates for the first round of changes:
- indirect object notation
- bareword filehandles (except maybe the standard filehandles)
That announcement specifically mentioned removing indirect object notation and bareword filehandles. That detail seems to have been reconsidered after it proved extremely controversial.
in Perl 8, you may have to write use bareword::filehandles to enable a feature with many disadvantages
I propose that we take advantage of a major version bump to replace that feature with a mostly-compatible (what I expect is the most common case would continue to work) near-equivalent that brings the advantages of the new model to the old style.
As far as the features you mention, $[ was recognized as a mistake and has been variously either a lexically-scoped compiler directive or read-only for almost the entirety, if not the entirety of Perl 5, and smartmatch, like pseudohashes, was never promoted from experimental status. Experimental features should not be carried across major versions — either they are good enough to become part of the core language at such a time or they should be dropped.
In reply to Re^6: On Backwards Compatibility and Bareword Filehandles
by jcb
in thread On Backwards Compatibility and Bareword Filehandles
by jcb
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |