9 ms·
Oh man. I don't know what to say. In the process of trying to bust myths, this confirmed every practical concern that the "myths" actually express. Perhaps t
by jannotti 7y ago
Oh man. I don't know what to say. In the process of trying to bust myths, this confirmed every practical concern that the "myths" actually express.
Perhaps the worst was: "Myth: Perl 6 will never be finished"
The author of this actually tried to argue against that "myth" by saying, "Perl 6 is defined as a set of test cases." and goes on to say that since the tests were written long ago Perl 6 is done, and has been since like, forever.
If that's the level of "Well, actually..." that this community uses, you can see why they've become irrelevant.
I LOVED Perl.
- wolfgke 7y ago> Oh man. I don't know what to say. In the process of trying to bust myths, this confirmed every practical concern that the "myths" actually express. I think this is part of the joke.
- moomin 7y agoMy favourite was “Myth: Perl6 is slow” “Reality: Look at all these open performance tickets!”
- b2gills 7y agoMany of those are because one way to write the code is slower than another way to write it. So it is more about the speed not being evenly distributed.
- Daemon404 7y agoBased on the rest of the blog, I can't actually tell if this is tongue-in-cheek or not...
- geofft 7y agoIt's very poorly written satire if so. You can't point out the absurdity of something by repeatedly arguing that it's not absurd. The point about Chinese characters being unfamiliar to readers of Latin alphabets is a good one, for instance. It would be like Dilbert having a week where the pointy-haired boss's apparent nonsense is actually good management practice that Dilbert has been misunderstanding: it would neither be funny nor effectively educational.
- runn1ng 7y agoHe replied to me on twitter, it’s not supposed to be a satire https://twitter.com/aearnus/status/1147960078680485889?s=21 https://twitter.com/aearnus/status/1147960078680485889?s=21
- wolfgke 7y agoThanks for the clarification. This all reminds me of Poe's law > https://en.wikipedia.org/w/index.php?title=Poe%27s_law&oldid=905113307 https://en.wikipedia.org/w/index.php?title=Poe%27s_law&oldid... "[W]ithout a clear indicator of the author's intent, it is impossible to create a parody of extreme views so obviously exaggerated that it cannot be mistaken by some readers for a sincere expression of the parodied views."
- deleted 7y ago[deleted]
- kabwj 7y ago>I LOVED Perl. 5 exists and will always exist. :-)
- smt88 7y agoIt will not, however, always get security updates, performance improvements, and maintenance for its libraries.
- ugexe 7y agoCan you elaborate on languages that will?
- smt88 7y agoI wasn't commenting on Perl as a language, but rather a specific version of the language.
- cygx 7y agoThe thing is, Perl6 as it exists today can not be used as a replacement for Perl5, and in consequence, Perl5 development continues and will continue for the forseeable future. It's better to think of Perl5 and Perl6 as two separate languages in the Perl family, similar to various Lisp dialects.
- rwmj 7y agoPerl 5 and Perl 6 are essentially separate languages at this point, so Perl 5 will continue to get features and updates for as long as anyone uses it, which will be a very long time yet.
- thesuperbigfrog 7y agoThe current state of Perl 5 for Python fans: ---- Perl 5: I'm not dead! TIOBE: 'Ere! 'E says 'e's not dead! Internet: Yes he is. Perl 5: I'm not! TIOBE: 'E isn't? Internet: Well... he will be soon-- he's very ill... Perl 5: I'm getting better! Internet: No you're not, you'll be stone dead in a moment. TIOBE: I can't take 'im off like that! It's against regulations! Perl 5: I don't want to go off the chart.... Internet: Oh, don't be such a baby. TIOBE: I can't take 'im off.... Perl 5: I feel fine! Internet: Well, do us a favor... TIOBE: I can't! Internet: Can you hang around a couple of minutes? He won't be long... TIOBE: No, gotta get to Reddit, they lost nine today. Internet: Well, when's your next round? TIOBE: Next year. Perl 5: I think I'll go for a walk.... Internet: You're not fooling anyone, you know-- (to TIOBE) Look, isn't there something you can do...? Perl 5: I feel happy! I feel happy! ---- But seriously, Perl 5.30 just came out in May. It's not dead yet.
- Ultimatt 7y agoThe Rakudo compiler targeting MoarVM is also "finished" in the sense I expect it would take you a while to find something not implemented from the spec. More advanced things like concurrency and parallelism features are ready, and there are even nice things built out of them like the Cro microservices framework https://cro.services/ https://cro.services/. You can also build applications with Cro using full integration with a JetBrains based IDE https://commaide.com/ https://commaide.com/, which feels like a level of maturity and support someone might expect of a finished product? Thats the real myth, is someone can read this article and still not realise Perl 6 is an entirely useful and complete language with a good implementation and nice tooling.
- geofft 7y agoThen the article should say that, not just say that the Platonic ideal of Perl 6 is well-defined in the writings of the prophet Larry.
- cutler 7y ago... but still dog slow. Sorry, it matters.
- omaranto 7y agoRuby is reasonably fast now, but when it became popular it still was very slow. So while speed definitely matters, maybe its lack is not an insurmountable obstacle.
- yati 7y ago> I LOVED Perl. Perl isn't going anywhere. It is under active development. One unfortunate thing about naming the sister language Perl 6 is that it tends to indicate that it is the Next Perl (like Python 2 vs 3). But it is not, Perl 5 is a very different language (and I wonder if at some point Perl 5 will switch to Perl 7.x just for the fun of it).
- xisukar 7y ago> One unfortunate thing about naming the sister language Perl 6 is that it tends to indicate that it is the Next Perl... This is a fair and it's one of the reason why Larry Wall created the alias Raku. But let's entertain for a moment that there wasn't even an alias for the language. I'm sure we both agree that for a person who comes across the names Perl 5 and Perl 6, the latter seems to indicate that it's the next version of the former. In fact, this is totally excusable. After all, why should the person assume they're different languages and disregard what seems to be a logical conclusion? 6 is immediately after 5 and it suggests some sort of progression. Thus, it was on the community to make it clear and unambiguous to newcomers but I'd daresay it failed at that. Raku is an attempt at correcting that blunder but who can say it will succeed in that area? Now... Would it be logical for the same person to rehash the same "assumption" after they already learned about it regardless of the context of the conversation? If you've (you in general) learned that Perl 5 and Perl 6 are different languages, what's the merit behind pointing out the obvious? Again, I'm referring to people who, for one reason or another, already know they're both different languages yet still are set to bring out, whenever the opportunity arises, the same and old "naming" debacle as a reason for people to avoid/bash either Perl 5 and/or Perl 6 When I first heard about C++, I myself was confused on whether it was the next and better version of C. However, it just took me an internet search to realize that C++ and C are two distinct languages. Afterwards, I haven't confused the two anymore. One might certainly argue that version numbers are different to use of operators (specifically, ++) but who decides that? For me, the ++ in front of a language's name implies the same type of progression 6 does over 5.
- raiph 7y ago> "Perl 6 is defined as a set of test cases." ... "Perl 6 is done" Quoting Larry Wall from 2000: > [we should] develop the real regression tests into a validation test of what the language actually means and actually go out and explore all the nooks and crannies ... and then we actually have a machine-readable spec. And to me that’s actually a lot more important than what the verbiage on the human readable thing says. The first implementation of this concept was released in 2016 as version 6.c. Then 6.d in 2018. P6 will never be "done" but 6.c and a compiler for it was/is done, similarly 6.d, while 6.e is at an early work-in-progress stage.
- chromatic 7y agoQuoting Larry Wall from 2000 If you're going to quote Larry Wall from 2000, be honest and also quote him as saying he wanted to release a beta by TPC 2001 and get the final version out by 2002. Don't mislead people by cherry-picking quotes out of context to gaslight them. That is, assuming you want to be an honest, good faith advocate.
- raiph 7y agoHi chromatic. I'm not going to engage with you beyond this comment. ---- To all readers, Imo the issue of a time line (estimated or actual) is immaterial to the original point made up thread (the role of tests in determining a compiler's compliance to a language specification). But I've decided to reply to chromatic's comment. With luck chromatic and perhaps others will reply with substance and the result will be a useful HN record about the original P6 time line estimates. I apologize in advance for any further trolling or disconcerting further tangents my comment generates. Besides quoting chromatic, all text I quote using `>` or "quoting" comes from sources I've linked in footnotes. ---- > If you're going to quote Larry Wall from 2000, be honest and also quote him as saying he wanted to release a beta by TPC 2001 and get the final version out by 2002. The Perl 6 announcement, which is what I was quoting, doesn't mention these things. [1] You were, as you tirelessly emphasize, physically in the thick of things, while I was merely reading things online as I found them, roughly contemporaneously with their publication, and then again in recent years. So feel free to provide your own quotes and links. ---- In the meantime, here's what Larry said about time lines in that initial speech: > We are really jazzed about this. It is our belief that if Perl culture is designed right, Perl will be able to evolve into the language we need 20 years from now. It’s also our belief that only a radical rethinking of both the Perl language and its implementation can energize the community in the long run. In the long run means 10 and 20 years down the road. Finally, it is our belief that Perl 5 will be better supported than it would be if we merely tried to guard what we already have. The best defense is a good offense. Now, this is not going to happen quickly. We expect to have alpha code a year from now, for some definition of alpha. We might even ship it, but we expect it to be well-designed alpha code. Perhaps mentioning this alpha time line was his first big P6 mistake. [2] It seems Larry felt comfortable announcing the original one-year-to-alpha estimate. But his comment is clearly about an open source community effort, not something he could assert control over, especially time wise, even if he cared to try. (He had already made it clear, before Perl 6 began, that he did not.) So why did he say such a thing? Perhaps he was thinking he had pulled off somewhat similar feats on his own before. After all, he wrote the original Perl 5 in about 18 months. And in the new project his anticipated initial role was "merely" thinking up a new language design with a view to keeping what was thought good about Perl 5, dropping what was thought bad, and integrating what he could from the dozen or so RFCs that the design process would supposedly be built around. So perhaps it was on that basis that he felt confident mentioning an alpha time line. ---- Imo, based on what I read at the time and have reread since (some key links are provided in this comment), less than 2 weeks later things were going downhill fast from a project management and time line estimate standpoint: [3] * An unrealistic draft schedule that got zero feedback ("Nobody had any objections to the draft") was converted into the official one ("so the draft becomes the real one"). * Despite the ominous sign of having no feedback, an alpha millstone (typo intentional) that apparently halved the time from the original estimate Larry had announced ("Vendor liaison begins January 1st 2001 with the alpha release") was added "unilaterally". * And to wrap up the whole arbitrary schedule "The final release will be on (he picks a date approx. 18 months from the start of the project) 1 January 2002." While the schedule's overall "long term" time line was clearly a made up fantasy from the start, the short term (weeks) details were no better. Larry was expected to start work on a language specification on Oct 1st 2000 and deliver it in FINAL form one month later. Imo this was obviously insane even if there were ZERO RFCs. (Yes, Brendan Eich produced an initial JavaScript design and prototype implementation in 10 days. No, this does not mean it made sense that Larry would produce a new final P6 design in a month.) Then, by the cut off date of Oct 1st the project had officially accepted not zero, not a dozen, but THREE HUNDRED AND SIXTY ONE RFCs. Many were substantive. Many were good ideas, poorly thought through. Maybe Larry could just about have hit the Oct 14th draft date if he simply summarily rejected around 97% of them without reading them. Or maybe he could if he had worked on it all, non-stop, without breaks for food etc., for 45 hours a week, spending FIVE MINUTES reading each RFC, FIVE MINUTES thinking about how to integrate it and FIVE MINUTES writing up a draft specification of that aspect. Except that wouldn't leave time for the rest of the language that the RFCs didn't address, eg what was already in Perl 5. And anyway, FIVE MINUTES?!? Imo an estimate of FIVE HOURS WALL CLOCK TIME for these tasks would not be unreasonable. FIVE MINUTES is INSANE. (Imo.) So, imo, as early as Oct 1st 2000, the schedule's millstones were very clearly INSANE expectations. ---- But it's not just Larry and the RFCs. The more general point is that the project's management failed to adapt to what had actually happened a few weeks into the project. There had been virtually zero input/help for management. That was an ill omen. In addition the language design task had grown to absolutely monstrous proportions. These ill omens were unexpected and then left unmitigated. [3] [4] The functional response would have been to reset expectations. But that didn't happen. So instead of P6 being considered a project that was the sort of thing that takes a decade if it's just a mild rewrite (Python 3 arguably took longer) it was instead expected by some to be done in 18 months based on nothing more than wishful thinking. That's not a good start expectations wise. ---- I fully expect chromatic to want to attack me and/or Larry, point out that they're an authority and I'm not, suggest I'm throwing folk under a bus, etc. I won't be responding. Please take what they write with a bucket of salt. ---- [1] https://www.perl.com/pub/2000/10/23/soto2000.html/ https://www.perl.com/pub/2000/10/23/soto2000.html/ [2] Larry has long said P6 would be a journey of mistakes, just like the journey with P5, albeit hopefully new mistakes. [3] https://www.nntp.perl.org/group/perl.bootstrap/2000/08/msg1185.html https://www.nntp.perl.org/group/perl.bootstrap/2000/08/msg11... [4] https://www.nntp.perl.org/group/perl.perl6.meta/2000/09/msg40.html https://www.nntp.perl.org/group/perl.perl6.meta/2000/09/msg4... [5] https://www.nntp.perl.org/group/perl.perl6.meta/2000/09/msg155.html https://www.nntp.perl.org/group/perl.perl6.meta/2000/09/msg1...