develooper Front page | perl.perl5.porters | Postings from December 2017

Re: We need a language design process.

Thread Previous | Thread Next
From:
Karl Williamson
Date:
December 31, 2017 21:14
Subject:
Re: We need a language design process.
Message ID:
1dff1c20-ebb3-1755-2ba0-88537b287e39@khwilliamson.com
On 12/30/2017 11:25 PM, Father Chrysostomos wrote:
> My point was that responding to user complaints or CPAN breakage by
> reverting unpopular changes, especially if it does not seem that an
> alternative will be ready in time for the next stable release, is just
> common courtesy.  You do not need a policy to be courteous.  You could
> call that 'support'.

I agree fully.

Some of you may be old enough to remember when Pan American airlines was 
hot stuff.  It is claimed by people who study such things that a big 
reason it went belly up after many decades at the top, is that they got 
arrogant, and developed a general attitude that it would be a lot better 
to run an airline if it weren't for those pesky passengers who weren't 
predictable and always docile.

(I mention another example in passing because I can't resist: for years 
they scheduled a flight to Bermuda from New York every Friday evening, 
and a return on Sunday, so that their CEO could spend weekends at his 
getaway home there.  The flights only had a few, if any, other passengers.)

It is a mistake to alienate our base, even if we think that "purity" 
demands it.  It tends to lead to extinction.  I agree with Leon that any 
changes to smart match should retain the "good" parts.  If that isn't 
possible, why can't we follow Unicode's example when they realize that 
the specification of a property was defective, and create a similar but 
new one, such as Script_Extensions vs plain Script?  Why can't we have a 
smartmatch2, for example?

It is clear that smartmatch was misnamed.  It probably should have been 
named "Too_clever_by_half_match", or "thinks_its_smart_match". 
Nonetheless, there are portions that people find useful, and Leon's 
point that we should keep these should be obvious to us.

If a deprecation proves to create too much havoc, it should be 
retracted.  I had to do that late in the 5.26 cycle where requiring a 
'{' to be escaped for it to be matched literally broke non-CPAN code 
that is written in Perl, and is used widely, but no one is updating it. 
There was an obvious solution in that the that use didn't interfere with 
our plans going forward, so I added some extra logic that avoided the issue.

Don't break things unnecessarily

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