
Paul Prescod writes:
One of the things I picked up from the Perl conference is that Perl users *seem* (to me) to have a higher tolerance for code breakage than Python users. (and Python users have a higher tolerance than (let's say) Java users) Even if we put aside Perl 6, Perlers talk pretty glibly about ripping little used features out in Perl 5.8.0 and Perl 5.10 and so forth.
(off-topic, but he started it!) That's a really interesting comment. In many ways it's probably true, although make no mistake about it--we take it in the neck for every language change we make! The features we're talking about removing are either deprecated or experimental. With that said, we've probably been less rigorous than we should be about segregating experimental features from blessed ones. I suspect that because experimental features are the only way to do something, they still get used no matter how much we caution that they may go away. I've been eyeing your 'import from the future' system of getting experimental features. I'll be interested to see how this holds up. Perl and Python believe in active maintenance and development with many small incremental releases (unlike Java with occasional bursty releases, and C++ and C which are to all intents and purposes static). Changes to the language cause problems we share, and the other mainstream languages don't provide us with any direction on how to approach the problem. We in the Perl camp have bandied around the idea of "use perl 5.004" as a way to get all the behaviour of the 5.004 release. That's a noble idea, but forces us to keep a lot of crap around when one of the goals of active development is to be able to shed obstructive missteps in language evolution. Nat