develooper Front page | perl.perl5.porters | Postings from October 2009

Re: do SUBROUTINE(LIST)

Thread Previous | Thread Next
From:
chromatic
Date:
October 26, 2009 19:26
Subject:
Re: do SUBROUTINE(LIST)
Message ID:
200910261925.59162.chromatic@wgz.org
On Monday 26 October 2009 18:54:11 Tom Christiansen wrote:

> Your question appears reasonable but seems to assume I held the
> original cursing warranted.  I did not, knowing it would break
> several score of my extant scripts.  But I let it go then,
> comfortable it wouldn't break programs that ran perfectly fine
> without warnings.  Trust me, I've written none such since then.
> But I don't think that matters, either.

I'm asking specifically about a feature deprecated in Perl 5.004, released in 
May 1997.  I assume that Chip and Larry had a good reason to deprecate it.  I 
also assume that in the 12 years since then, anyone who really wanted to 
undeprecate it could have made the argument to do so and anyone who really 
relied on it in important code could have rewritten to avoid it.

Maybe those are unfortunate assumptions to make.  I don't intend to justify 
them here; I merely document them so that everyone understands them.

> I *DESPISE* having to change code just because some new release
> has gone off and obsoleted it.
>
> Don't you?

I see it differently.  I think the 5.004 release obsoleted this particular 
feature -- not a proposed 5.11.2 or 5.12.0 release.  There have been 24 stable 
Perl 5 releases since 5.004.  I think that's a lot of warning away from these 
deprecated features and a lot of versions of Perl 5 they can use which 
maintain these features.

> I should like to hear the soundly reasoned "justification"
> for breaking backwards compatibility to a level demonstrably
> orders of magnitude worse than Dennis Ritchie himself was
> willing to break it.

Are any of do SUBNAME or the Perl 4 single quote or sigilless aggregates or 
hash/array as reference or pseudo-static my() sufficiently ingrained and 
pervasive that finally removing them, after years of deprecation notices 
available to code that uses -w or the warnings pragma, will cause widespread 
hardship?

Would you consider this upgrade less of a hardship if there were converters 
which could rewrite programs to avoid deprecated features?  (I gleefully 
borrow this idea from a conversation I had with Brian Kernighan regarding Make 
and awk.  Sadly, there was no food involved.)

Do you oppose removing deprecated features altogether, or do you think people 
need more time between deprecation and removal?  If the former, do you also 
disapprove of deprecation even without eventual removal?

-- c

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About