Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.88k stars 530 forks source link

More patching! Less whining! #1689

Closed p5pRT closed 20 years ago

p5pRT commented 24 years ago

Migrated from rt.perl.org#2935 (status was 'resolved')

Searchable as RT2935$

p5pRT commented 24 years ago

From tchrist@chthon.perl.com

As for why it was released early

It wasn't. It was released late--about a whole year late. See below for what I mean\, and why.

I have no idea\, but wouldn't mind seeing this thread following to fruition.

I somewhat doubt that. The only thing fruity I've seen in this thread is most of its postings\, yours being far from the least exaggerated in this regard.

I am seeing companies and groups deny pressuring Sarathy for an early release. This is quickly becoming an _embarrassment_ to this group and the Perl community\,

It is? Really? You're calling a working\, dramatically improved\, and far more than simply timely release an EMBARRASSMENT? Surely you jest! Does twitterpation run in neck of the woods? I haven't checked the moon lately. Perhaps that's it.

I have not\, to the best of my recollection\, seen even a single compatibility issue between the previous release and this one amongst any one of the thousands or so Perl programs runig on my system\, nor even a burp in compiling any external module. While it is possible of course possible that my memory is selective here\, it seems also possible that the faultometer points to the notion that just maybe there's something wrong with *your* environment. The build failures I've seen come in have all appeared to my casual inspection ephemeral at worst. Again\, I'm not Andy and such\, so that's not subject matter to quickly catch my eye.

As some of you have doubtless noticed\, I've been stress-testing and feature-testing various pieces of Perl. And guess what? Yep\, some things are broken! However did you guess? Now guess what else​: These things\, nearly to the very last of them\, have in fact *ALWAYS* been broken! Why are you not excoriating the previous release managers for having the temerity to emit a version of Perl that was\, in fact\, imperfect?

I'll tell you why​: because software has bugs. All software has bugs and infelicities. It always has and it always will\, and if you wait until it doesn't\, you're going to be wait a long\, long time.

and there seems no reason to doubt that this will worsen in a very short time.

Now you're simply being needlessly paranoid by spreading this sort of silliness. *WHAT* is going to worsen? This non-existent `embarrassment'? Well\, feel free to embarrass yourself all you want to\, but this is a release whose contributors should be proud of. Why? Because it's a *good* release\, and it is far past time that it were released to the world.

I also suspect that the culprit will emerge shortly as well.

Perhaps so\, but if that happens\, there'll be no question whom to blame​: follow the hand that's holding the mirror.

Yes\, that's right. The only `culprits' here are those very individuals seeking to cast aspersions of negligence at precisely those targets where such defamations are in fact the least called for. The sheer mass of people who sit on their butts and expect somebody *else* to slave away for them is astounding.

There was also no warning that I've seen that 5.6 was an early beta\, or

It wasn't.

early-beta-ish\, though that's certainly where it's stands.

You're wrong. As I shall presently prove.

The Win32 community is convinced that 5.6 is out\, stable\, and available only from one source.

And just whose fault might you be construing *that* to be? If the helpless and hapless demand that all be handed them on a silver platter because they are either too lazy or too incompetent to seek their own solutions\, how can you blame the hand that holds out a platter to those bleating multitudes in such earnest need? There is no guilt to distribute here. Nothing stops anyone from solving their own problems\, nor does it stop anyone else from becoming

I would also qualify "stable" with the stability of the more popular modules\, Tk\, LibWin32\, LibWWW\, LibNet\, GD\, DB_File\, and other biggies\, many of which do not compile at all with 5.6 without "relatively minor tweaking".

You're fear mongering. There was one bug related to Tk. DB_File is standard. LibWWW and LibNet have no problems. And I'll leave the remaining crud to the already crudded to crud on their cruddy own.

Without these modules\, Perl is not Perl.

Rubbish and poppycock. And less savory bits\, too.

I am at the dawn of the first official release of CodeMagic\, Perl's only world-class editor at this time

HAHAHAHAHAHHAAHHAHHAHAHAHHAAHAHAAHAHAHHAHAH

Ok\, I've nearly recovered from my uncontrolled paraxyms of streaming hilarity\, I have just one question for you\, David. For just how long have you had this obvious addiction to WORLD-CLASS HALLUCINOGENS?

soon to go cross-platform\, which depends on a stable Perl as a backbone​: and after officially declaring 5.6 ready\, this group is now wondering why it was released at all so quickly?

It wasn't. It was released incredibly\, unprecedentedly SLOWLY.

First of all\, to the people who think there's nothing here that merits a release​: you're cracked.

It has been my perception--completely unverified\, but nevertheless my honest impression--that if one were to examine the changes recorded in the 5.3-to-5.6 perldeltas\, that one would find the greatest functional distance between any pair of consecutive releases to lie between 5.5 and 5.6. This might even be true all the way back to 5.0.

Did you read these?

  Core Enhancements   Interpreter cloning\, threads\, and concurrency   Lexically scoped warning categories   Unicode and UTF-8 support   Support for interpolating named characters   our declarations   Support for strings represented as a vector of ordinals   Improved Perl version numbering system   New syntax for declaring subroutine attributes   File and directory handles can be autovivified   open() with more than two arguments   64-bit support   Large file support   Long doubles   more bits   Enhanced support for sort() subroutines   C\<sort $coderef @​foo> allowed   File globbing implemented internally   POSIX character class syntax [​: :] supported   Improved C\<qw//> operator   pack() format 'Z' supported   pack() format modifier '!' supported   pack() and unpack() support counted strings   Comments in pack() templates   Weak references   Binary numbers supported   Lvalue subroutines   Some arrows may be omitted in calls through references   Boolean assignment operators are legal lvalues   exists() is supported on subroutine names   exists() and delete() are supported on array elements   Pseudo-hashes work better   Automatic flushing of output buffers   Better diagnostics on meaningless filehandle operations   Where possible\, buffered data discarded from duped input filehandle   eof() has the same old magic as \<>   binmode() can be used to set :crlf and :raw modes   C\<-T> filetest recognizes UTF-8 encoded files as text   system()\, backticks and pipe open now reflect exec() failure   Improved diagnostics   Diagnostics follow STDERR   syswrite() ease-of-use   Better syntax checks on parenthesized unary operators   Bit operators support full native integer width   Improved security features   C\ and C\ may be overridden   $^X variables may now have names longer than one character   New variable $^C reflects C\<-c> switch   New variable $^V contains Perl version as a string   Optional Y2K warnings   Modules and Pragmata\, new or improved   Modules   [zillions]   Pragmata   [various]   Utility Enhancments   dprofpp   find2perl   h2xs   perlcc   perldoc   The Perl Debugger   Improved Documentation   Performance enhancements   Simple sort() using { $a \<=> $b } and the like are optimized   Optimized assignments to lexical variables   Faster subroutine calls   Installation and Configuration Improvements   -Dusethreads means something different   New Configure flags   Threadedness and 64-bitness now more daring   Long Doubles   -Dusemorebits   -Duselargefiles   installusrbinperl   SOCKS support   C\<-A> flag   Enhanced Installation Directories   Platform specific changes   Supported platforms   DOS   OS390 (OpenEdition MVS)   VMS   Win32   Significant bug fixes   \ on empty files   C\<eval '...'> improvements   All compilation errors are true errors   Implicitly closed filehandles are safer   Behavior of list slices is more consistent   C\<(\$)> prototype and C\<$foo{a}>   C\<goto &sub> and AUTOLOAD   C\<-bareword> allowed under C\   Failures in DESTROY()   Locale bugs fixed   Memory leaks   Spurious subroutine stubs after failed subroutine calls   Taint failures under C\<-U>   END blocks and the C\<-c> switch   Potential to leak DATA filehandles   New or Changed Diagnostics   New tests

That's a smeg of a lot of feepers crawling up your trousers. Sure\, some of them are a bit shakey\, but this is nothing new. What's good enough? What do you bloody WANT\, man? You want something that never was nor shall ever be\, that's what you want. Look here at this\, from perlhist​:

  5.0 1994-Oct-17   5.1 1995-Mar-13   5.2 1996-Feb-29 Prototypes   5.3 1996-Jun-25 Security Release   5.4 1997-May-15 Major Maintenance Release   5.5 1998-Jul-22 Oneperl.   El Zilcho All of 1999   More Nada? All of 2000

Is that really what you wanted recorded for 2000? More nothingness?

We have not had a new Perl release since July 22nd\, 1998. Did you realize that? By the time TPC4 gets here\, there shall have passed us by what is starting to approach a number perilously proximate to TWO LONG YEARS of twenty four months (plus a rare leap day :-) since our last release.

Why is that? What does it mean?

I believe I can tell you what it means​: expectations are inappropriately superset. Look at the notes next to those releases up there. These releases do *not* need to completely change the whole world. In fact\, they oughtn't. If that's what they're expecting\, then they're expecting perl6\, not perl5.6! And having everything and having it perfect -- threads\, events\, signals\, compilers\, unicode\, feep\, feep\, feep -- such a thing does not deserve to be called 5.6 if the past is to be any guide to the future.

Have you no sense of the past? Do you know how much work as gone into it? Watch this. You'll see the patch rate (well\, check-in rate; some "patches" actually patch many files) over the last few years​:

  1997 1998 1999 2000

  03/97 4 01/98 59 01/99 212 01/00 187   04/97 4 02/98 156 02/99 312 02/00 441   05/97 16 03/98 230 03/99 187 03/00 520   06/97 7 04/98 68 04/99 52   07/97 9 05/98 159 05/99 212   08/97 4 06/98 203 06/99 49   09/97 40 07/98 407 07/99 279   10/97 104 08/98 102 08/99 208   11/97 144 09/98 118 09/99 200   12/97 50 10/98 267 10/99 236   11/98 236 11/99 97   12/98 122 12/99 144

Notice how the recent activity levels have set new records on contributed changes. What more are you asking!? This has been on the pot far too long\, and lone Sarathy (admittedly with help on some pieces from Jarkko\, Andy\, Larry\, along with\, I'm horribly sorry to have to say\, *depressingly* few others)\, has seemed\, really\, to have by and large done nearly everything that's been getting done in terms of the brandspanking new superfeature expansions all on his very own. Certainly the unification and buck-stopping reside at his doorstep. But continued expectations that Sarathy should toil evermore to happify everyone's favorite feep are neither charitable nor sustainable.

These inhuman expectations of perfection and infinite work from folks sitting around on their thumbs and spining are just intolerable. This is a volunteer organization! There's nobody you can sue\, and there's no one you can blame save YOURSELF for not having put in the work. What did YOU work on? Did you break it? Did you fix it?

How long in your eyes should this terribly tardy release have sat there stewing? What's good enough for you? Don't you think TWO FRICKING YEARS was good enough? No release could EVER have seen the light of day if were held to these insane criteria you apparently expect to see met. It's never been that way before\, and you're positively pixilated to expect it now.

  "Programs\, like books\, are never finished; they are merely   abandoned."

Eventually it comes time to tidy up the stray feathers and push the fledgling out of the nest. It's finally been done\, and thank goodness for that! This is merely 5.6\, not Perl6. It's just not that big a deal\, so get over it already. 5.6.1 will be along by and by. Why aren't you working on it RIGHT NOW???

Less whining! More patching!

--tom

p5pRT commented 24 years ago

From [Unknown Contact. See original ticket]

It is? Really? You're calling a working\, dramatically improved\, and far more than simply timely release an EMBARRASSMENT? Surely you jest! Does twitterpation run in neck of the woods? I haven't checked the moon lately. Perhaps that's it.

I have not\, to the best of my recollection\, seen even a single compatibility issue between the previous release and this one amongst any one of the thousands or so Perl programs runig on my system\, nor even a burp in compiling any external module. While it is [snip]

You seem to have a utopian system. Doesn't jive with the other posts in this thread and others\, though.

As some of you have doubtless noticed\, I've been stress-testing and feature-testing various pieces of Perl. And guess what? Yep\, some things are broken! However did you guess? Now guess what else​: These things\, nearly to the very last of them\, have in fact *ALWAYS* been broken! Why are you not excoriating the previous release managers for having the temerity to emit a version of Perl that was\, in fact\, imperfect?

I've never heard of any perfect piece of software\, especially in its first release. But there's a vast difference between imperfect and broken.

[rant-snip]

The sheer mass of people who sit on their butts and expect somebody *else* to slave away for them is astounding.

After spending thousands of hours working on my own gratis contribution to the perl community\, I'll guess you're speaking to someone else.

Some people work on the perl core\, and despite some people's opinions that's not all there is to "contributing". Some people work on perl modules\, and despite some people's opinions that's not all there is to "contributing". Some people work on documentation\, some on advocacy\, some on getting perl accepted in more situations and for more uses by providing free\, professional quality software built for it. Whose contribution is most important? Which is more important\, the big toe or the little pinky toe? Neither\, it's the whole body that's important. Thinking otherwise is arrogance and inappropriate self-importance. That's biblical\, isn't it? 1st Corinthians I believe.

I\, for one\, _AM_ contributing my butt off\, not just in time and sweat and sore fingers but financially as well. My conscience is clear.

The Win32 community is convinced that 5.6 is out\, stable\, and available only from one source.

And just whose fault might you be construing *that* to be? If the helpless and hapless demand that all be handed them on a silver platter because they are either too lazy or too incompetent to seek their own solutions\, how can you blame the hand that holds out a platter to those bleating multitudes in such earnest need? There is no guilt to distribute here. Nothing stops anyone from solving their own problems\, nor does it stop anyone else from becoming

There are entities that exist that thrive on the helplessness and haplessness of the Win32 community\, and go through great pains to keep them there. They hold out their hands with what minimal is needed to eat\, then steal their shoes.

And no\, I'm not talking about the Perl Porters.

Your generalization of Win32 users as being helpless and hapless little ignorant lambs continues to be incorrect and insulting. There are a large number of exceptions to Christiansen's Law "All Windows users are idiots because I say so." Maybe you should name your next book "Programming Perl for Tom\, because everyone else is an idiot\, especially Win32 users." True\, Win32 is fullest of Perl's newest and rawest users\, especially where the web is concerned\, and some of them are clueless... they would admit it openly\, and with the rare exception generally do. But your arrogance isn't going to keep out the newbie web users\, no matter how much you cry and stomp your feet.

Precisely how does this arrogance help the perl community as a whole? How does it help even the unix-perl community?

I would also qualify "stable" with the stability of the more popular modules\, Tk\, LibWin32\, LibWWW\, LibNet\, GD\, DB_File\, and other biggies\, many of which do not compile at all with 5.6 without "relatively minor tweaking".

You're fear mongering.

This has been shown in many posts both here and in the advocacy list. You're false-hope mongering.

I realize that eventually everything will stabilize\, that the modules will eventually be repaired and possibly even made a little more flexible for the next time backwards compatibility is thrown to the wind.

Without these modules\, Perl is not Perl.

Rubbish and poppycock. And less savory bits\, too.

Heh. Tell that to the tens of thousands of users who thrive on Tk and LibWin32\, neither of which (as of about 2 weeks ago) compile with core perl on Win32 without changes. I stopped at that point. I don't really know how far this problem goes.

[rant-snip]

soon to go cross-platform\, which depends on a stable Perl as a backbone​: and after officially declaring 5.6 ready\, this group is now wondering why it was released at all so quickly?

It wasn't. It was released incredibly\, unprecedentedly SLOWLY.

The slow approach to 5.6 doesn't excuse it's anomalously short public beta stage\, with little opportunity for module authors to catch up.

First of all\, to the people who think there's nothing here that merits a release​: you're cracked.

I don't believe that's the nature of this thread. Someone asked whether 5.6 was really worth putting out... I don't agree with that. There is a lot of 5.6 that is a wonderful addition to the Perl arsenal. It's too bad that some of the additions aren't finished\, and that compatibilty with modules was broken.

Now\, I know the problems will eventually sort themselves out. I have more faith in the Porters than you give me credit for\, but what was learned by this error?

[unneeded perl advocacy-snip]

Is that really what you wanted recorded for 2000? More nothingness?

Perhaps there were too many goals for 5.6. There are lots of reasons for a "stagnation" like you're representing.

We have not had a new Perl release since July 22nd\, 1998. Did you realize that?

Yes. I was there. I was unfortunately duped into writing some false marketing for a perl company at that time... that is now spread all over the internet\, and not a word of it actually true. However\, point taken​: I was not present and do not have stats on the distance between the releases from 5 to 5.005.

But then\, we are not discussing the oolong commodity of central asia.

[unneeded perl advocacy-snip]

These inhuman expectations of perfection and infinite work from folks sitting around on their thumbs and spining are just intolerable. This is a volunteer organization! There's nobody you can sue\, and there's no one you can blame save YOURSELF for not having put in the work. What did YOU work on? Did you break it? Did you fix it?

I think we've covered that. Since around 11/98\, I've been working on an excellent marketing tool for Perl\, designed to help bring more corporate exposure to our language of _choice_ and to provide for the poor folks stuck editing perl cgi with notepad.

How long in your eyes should this terribly tardy release have sat there stewing? What's good enough for you? Don't you think TWO FRICKING YEARS was good enough?

We're not discussing a two-year wait\, we're discussing a disordinantly short beta period\, lack of backwards compatibility\, broken modules\, and the mystery of whom or what all of a sudden rushed perl 5.6 to "stable" status.

Eventually it comes time to tidy up the stray feathers and push the fledgling out of the nest. It's finally been done\, and thank goodness for that! This is merely 5.6\, not Perl6. It's just not that big a deal\, so get over it already. 5.6.1 will be along by and by. Why aren't you working on it RIGHT NOW???

I happen to be busy elsewhere in the perl community\, giving my time and effort till 4 and 5 in the morning to improve our lives nonetheless.

Less whining! More patching!

Less ego\, more common decency.

p5pRT commented 24 years ago

From @pudge

At 5.08 -0600 2000.04.01\, David Grove wrote​:

I've never heard of any perfect piece of software\, especially in its first release. But there's a vast difference between imperfect and broken.

Against my own advice to ignore this source\, I'd just like to point out that this source has given not one shred of evidence that perl 5.6 is broken\, in any way. w00p!

p5pRT commented 24 years ago

From @pudge

At 22.23 -0700 2000.03.31\, Tom Christiansen wrote​:

I am seeing companies and groups deny pressuring Sarathy for an early release. This is quickly becoming an _embarrassment_ to this group and the Perl community\,

It is? Really? You're calling a working\, dramatically improved\, and far more than simply timely release an EMBARRASSMENT? Surely you jest! Does twitterpation run in neck of the woods? I haven't checked the moon lately. Perhaps that's it.

Tom\, just consider the source. At best\, this source is prone to illogical and excessive attacks on anything that he doesn't like or understand\, especially if it is related to ActiveState\, or anything that it feels is competition to it in any way. Its whinings are pointless and useless. You'd be better off ignoring it.

p5pRT commented 24 years ago

From [Unknown Contact. See original ticket]

Against my own advice to ignore this source\, I'd just like to point that that this source continuously ignores post after post clearly demonstrating a point in several fora when maligning a person who takes the posts and collectively represents them\, and resorts to personal attacks while avoiding the issues presented.

See? I can do that too. A bit childish\, but more to your level I think.

Perl 5.6\, in the context of a Perl system (which includes more than the core modules)\, is broken\, in that it's extension mechanism is not compatible with many of those modules\, and no backwards compatibility was built in. The point is\, have we learned from this lesson\, or are we just going to go on ignoring it and spouting off about how useless Win32 is and how stupid its users are?

-----Original Message----- From​: Chris Nandor [mailto​:pudge@​pobox.com] Sent​: Saturday\, April 01\, 2000 8​:05 AM To​: David Grove Cc​: Tom Christiansen; perl5-porters@​perl.org Subject​: RE​: More patching! Less whining!

At 5.08 -0600 2000.04.01\, David Grove wrote​:

I've never heard of any perfect piece of software\, especially in its first release. But there's a vast difference between imperfect and broken.

Against my own advice to ignore this source\, I'd just like to point out that this source has given not one shred of evidence that perl 5.6 is broken\, in any way. w00p!

-- Chris Nandor | pudge@​pobox.com | http​://pudge.net/ Andover.Net | chris.nandor@​andover.net | http​://slashcode.com/

p5pRT commented 24 years ago

From @doughera88

On Sat\, 1 Apr 2000\, David Grove wrote​:

Perl 5.6\, in the context of a Perl system (which includes more than the core modules)\, is broken\, in that it's extension mechanism is not compatible with many of those modules\, and no backwards compatibility was built in.

Please be specific and precise. 5.6.0 has two different specific backwards-compatibility mechanisms built in.

One is bincompat5005\, which is set by Configure to 'define' by default.
This provides binary compatibility so most old modules continue to run without being recompiled.

The second is PERL_POLLLUTE\, which deals with source compatibiliity issues (e.g. PL_na)\, should you decide to rebuild a module. (Note that you usually don't *have* to rebuild a module -- 5.6.0 will\, by default\, look for and use your old 5.005_03 moduiles. With PERL_POLLUTE\, you have two options​: You can either enable it on a case-by-case basis for extensions with perl Makefile.PL POLLUTE=1\, or you can build your perl to always pollute. This is discussed in the INSTALL file. Note too that these changes were made in October 1998\, so the community has had 16 months to become aware of them and act accordingly. I don't think waiting another month or so would change things too much.

Some of us worked very hard to try to maintain backwards compatibility. I personally am disappointed to read that despite all that hard work you still claim that "no backwards compatibility was built in."

  Andy Dougherty doughera@​lafayette.edu   Dept. of Physics   Lafayette College\, Easton PA 18042

p5pRT commented 24 years ago

From [Unknown Contact. See original ticket]

David Grove \pete@&#8203;petes\-place\.com writes​:

Perl 5.6\, in the context of a Perl system (which includes more than the core modules)\, is broken\, in that it's extension mechanism is not compatible with many of those modules\, and no backwards compatibility was built in.

That is doubly not true​: 1. The use of bare 'na' etc. has been deprecated since 5.005-ish. 2. There is a work round by setting POLLUTE - so compatibility _is_ built in.