21 ms·
Larry Wall Unveils Perl 6.0.0
- ryanobjc 11y agoLarry Wall Unveils Perl 6 and no comments on hacker news an hour later. That's the new headline that sums up Perl: an anachronistic programming language that may never recover from the perl 5->6 decade long 'freeze'. Also the language is crazy to write substantial programs in!
- pjc50 11y agoYeah, the freeze killed momentum and left the community to wither. Python's transition was much better but is still not quite complete, and consumed a lot of time and effort. Making a backwards-incompatible change to a programming language == making and launching a new language, with all its difficulties.
- smithkl42 11y agoIf Python's transition actually was much better, that says quite a bit about how awful the Perl transition is gonna be - since the Python 2->3 transition seems pretty widely acknowledged to be a disaster.
- Mithaldu 11y agoThere is not and will not be a transition. It is a completely new and different language.
- BuckRogers 11y agoWhich is exactly what Python should have done. Call Python3 a new language and not try to kill/degrade Python2 but have both live on... which they will anyway regardless.
- krylon 11y ago> Also the language is crazy to write substantial programs in! I would not want to write anything big in Perl 5. But for small-ish scripts (say, less than a thousand lines) it is pretty hard to beat.
- mikekchar 11y agoPerl is awesome for writing big programs in. One of the things that people find frustrating about Perl is its expressiveness -- that is, there are many different ways of doing the same thing. The result is sometimes that you get 100 different people doing things 100 different ways. This is not so much a problem with the language as it is with programmers not learning to agree on a set of idioms that they will use for a project. They are not reading each others code and having discussions about what they want to see. Languages that impose "the one true way" cut down on the apparent problems, but you are still going to have massive issues down the road if you build large projects because nobody is paying attention to what the other people are doing. Especially on large projects, it is vital that people read and comment usefully about design issues. In such large projects, removing the choice of idioms available though language design is a bit like deciding not to carry a canary down the mine with you because it keeps getting killed by poisonous gas. The expressiveness of Perl allows you to choose the idioms that will work best for your team/project. It is true that it requires more discipline and communication, but these are the things that are necessary for success on a big project anyway. I haven't written any Perl code for years now, but I have always been fond of it. I find that I can write better code in Perl than in many of the more restrictive languages that I've used.
- ionforce 11y ago> Perl is awesome for writing big programs in. This isn't even remotely true. No static types, no thank you. Runtime errors due to misspelled methods? Missing hash keys? Hilarious. Boy, I hope this scalar isn't undefined!
- kbenson 11y agoThen you might be pleasantly surprised to learn that Perl 6 has a type system and compile time errors functions (but methods are runtime errors - on purpose). As for missing hash keys... It sounds like you are using a hash when you really want an object. There are cases where that's preferable, but part of that trade-off is that you need to make sure the data is as you expect it. Perl 6 supports tightly packed (C struct equivalent) objects if you choose.
- russellallen 11y agoDon't worry, within 24 hours there will be hundreds of comments all explaining how Perl 6 is of no interest to anyone.
- melling 11y agoIt does need to find an audience. People using Perl 5.x are probably working in conservative companies that stuck with what worked. Perl 6 will need 2-3 years to bake. Python 3.x is just gaining some tractions 7 years after its release. Perl 6 needs to find a problem that it can solve well. Perhaps a great web framework?
- peteretep 11y agoThe companies I know using Perl are generally not so conservative - many of them also have Go code bases, heavy focus on DevOps, and so on. They tend to keep using Perl because they have developers who love programming in Perl...
- sp332 11y agoThere was discussion about it yesterday: https://news.ycombinator.com/item?id=10331008 https://news.ycombinator.com/item?id=10331008
- xlm1717 11y agoIs it so crazy though? With frameworks like Mojolicious and Dancer, you can set up a whole website using syntax familiar to someone coming from Sinatra on Ruby or Express on NodeJS.
- Floegipoky 11y agoI've spent a year now using Perl exclusively at my job, and I love it. It's incredibly powerful, expressive, concise, and well-documented. It's a lot like js where the language has some cruft but as long as you're not working with any cowboys you can build some really elegant software.
- cygx 11y agoSome of the code examples suffer from a failure to escape angle brackets...
- krylon 11y agoI honestly did not expect to see the day Perl 6 gets finished. This must have been one of the most difficult - if not the most difficult - births in the history of programming languages. At work, I have been using Perl 5 increasingly often over the past two years, mainly because handling unicode in Python 2 is not a lot of fun (and I still haven't come around to learning Python 3), and I have rediscovered why I used to like it so much. So far I have not looked into Perl 6 seriously, because I did not see the point to do so before it was finished. Guess I know now what I'll be doing this Christmas. :) Also, you gotta love Larry for quotes like this one: "This is why we say all languages are religious dialects of Perl 6..."
- deleted 11y ago[deleted]
- xlm1717 11y agoI share the same sentiment. I am so glad to see it finally formally launched. Now, to dig in to Perl 6!
- infofarmer 11y agoOh, it didn't get finished. Perl 6 is just getting started!
- tcdent 11y ago> I still haven't come around to learning Python 3 I'm not using it everyday yet either, but it's not a whole new language. More like just a few cleanups to sensitive portions of the API.
- mahouse 11y agoI would love to see a concise document with the differences.
- 2g67vupsoknn 11y agohttps://docs.python.org/3/whatsnew/3.0.html https://docs.python.org/3/whatsnew/3.0.html
- amyjess 11y agoCongratulations Larry and the Perl 6 community! From what little I've played around with the language in the past, I really like it, and I'm glad the community can put the "still in development" talking point behind it. Also, one of my favorite things about Perl 6 is that the Rakudo interpreter prints some of the nicest error messages I've ever seen. It actually offers suggested solutions, and it points out Perl 5->6 migration gotchas.
- InclinedPlane 11y agoSeems too little too late. Is Perl still relevant in 2015? What would you build in Perl today that you wouldn't build in another language instead? I used to be a big fan of Perl but it seems to have fallen behind the times, I doubt Perl 6 is enough to catch up.
- agumonkey 11y agoThe typing and grammar mechanism aren't common, it may influence other languages. Also, Perl managed to survive even without mainstream relevance so the community will probably keep enjoying it. ps: I found this talk pretty convincing about pragmatism https://www.youtube.com/watch?v=lpu-3UF_b48 https://www.youtube.com/watch?v=lpu-3UF_b48 also: https://www.youtube.com/watch?v=JpqnNCx7wVY https://www.youtube.com/watch?v=JpqnNCx7wVY
- ebiester 11y agoThere is nothing stopping a resurgence of Perl, if it's an order of magnitude better than competitors. If the combination of modern Perl techniques and the language make it a good enough fit for a new interesting framework or tool, then we might all be writing Perl again in a few years.
- xlm1717 11y agoJust needs to get more jobs posted for it first. Going back to the original comment: >What would you build in Perl today that you wouldn't build in another language instead? You could turn it around too: what could you build in another language that you couldn't build in Perl? Well, nothing really. It's a matter of taste, and I think what continues to set Perl apart is its syntax, which could be really good and readable when you don't try to do code golf.
- InclinedPlane 11y agoI didn't say could or couldn't, we're talking about turing equivalent languages of course so that question is meaningless, I said would. You can code anything you want in native assembly, or in brainfuck even. But why would you? If you have some impressionable new college grad just getting into the industry how would you convince them to use Perl to build things instead of any other option?
- akkartik 11y agoJunctions and autothreading seem to be importing the core of APL/J: http://doc.perl6.org/type/Junction http://doc.perl6.org/type/Junction (I'm randomly scanning http://faq.perl6.org http://faq.perl6.org)
- kbenson 11y agoPerl 6 basically hoovered every good programming concept they could think of (and some that ended up being not so good, which have hopefully been shaken out over the last decade). If you want a small language, this is not it. If you want an amazingly powerful language that just allows you to do what you want with a minimum of fuss, pull up a seat.
- notsony 11y agoWhereas Go has gone the other route and jettisoned everything. Not having a ternary operator is a real pain. One thing Go does well is provide the gofmt tool. There is only one way to format code properly. Does Perl 6 have something like this?
- kbenson 11y agoNo, but Perl 5 has Perl::Critic[1], which is a configurable opinionated code and style analyzer. It defaults to using the Perl Best Practices book by Damian Conway, with configurable levels of exactness. You can modify the rules to suit your particular needs/team. I imagine something on this front will materialize for Perl 6 sooner than later. 1: https://metacpan.org/pod/Perl::Critic https://metacpan.org/pod/Perl::Critic
- justinator 11y agoProbably soon. Perl 5 has a Tidy'ing tool[0], as well as a Lint[1] tool. Both are based on rules created from (originally) Best Practices [2]. These rules of course can be modified to taste, so you can set your own rules/filters before checking in your changes to a repo (or, whatever) [0] https://metacpan.org/pod/distribution/Perl-Tidy/lib/Perl/Tidy.pod https://metacpan.org/pod/distribution/Perl-Tidy/lib/Perl/Tid... [1] https://metacpan.org/pod/Perl::Critic https://metacpan.org/pod/Perl::Critic [2] http://shop.oreilly.com/product/9780596001735.do http://shop.oreilly.com/product/9780596001735.do
- meesterdude 11y agoPerl was the first programming language I ever used, and i think 6 was being worked on even then. I've moved on to ruby as my goto, but my (limited) memories of perl are fond, and I'm happy to see its still moving forward.
- mst 11y agoEvery time I try and write ruby I end up giving up because the OO is boilerplate heavy and restrictive compared to Moo/Moose. Basically "No method modifiers and I have to write my own constructors? Really?" always drives me away within a few hours.
- vidarh 11y agoMethod modification is trivially done through "alias" and then just redefining the method in Ruby, if you re-open the same class. If you subclass, then "super" is sufficient. I'm curious what you actually mean here. As for writing your own constructors, you only need to do so if you actually need to initialize something, and since instance variables can be used without having initialized them in a constructor (they'll just default to nil), I'm curious what you mean here too.
- mst 11y ago> Method modification is trivially done through "alias" and then just redefining the method in Ruby I don't know how to convert this into ruby then without needing to manually gensym a bunch of names: use Class::Method::Modifiers; sub foo { 2 } before foo => sub { warn "before foo 1" }; around foo => sub { my ($orig, $self) = (shift, shift); warn "around foo"; (1, $orig->$self(@_), 3); }; before foo => sub { warn "before foo 2" }; > As for writing your own constructors, you only need to do so if you actually need to initialize something Which is required if you're going to use value objects as much as possible rather than spraying mutable state everywhere.
- dragonwriter 11y ago
- protomyth 11y agosidenote: why does a barracuda device consider pigdog.org "Porn"?
- watersb 11y agoCoder porn?
- retbull 11y agowell they have certain ... associations ... with dog urls so they decided that dog* was a good ban pattern.
- protomyth 11y agoIn a perl article, you give a non-matching pattern? Its just one of those little things we don't think of often, but a lot of folks buy these devices and its a weird form of censorship beyond what's normally intended.
- keyle 11y agoSame issue here.
- bronson 11y agoJust to remind you that it's working and has your best interests in mind.
- tcdent 11y agoThe site has a lot of commentary on the subject of pornography, in addition to hosting porn.
- huangc10 11y agoPerl was the first high-level language I learned and I've used it many times during interviews. I still think I can solve most non language-specific interview questions extremely efficiently with Perl. Go Perl!
- jamespitts 11y agoCongrats to the perl community. We should keep an open mind and learn from what they have accomplished. If perl 6 turns out to be useful for the larger software engineering community (and is more widely adopted), this is wonderful. If not, then we still have another interesting language in the great river of interesting tech things. Either way, the perl community will continue to do what it does best!
- thedz 11y ago> ++; # An anonymous state variable, for very fast loops Perl, never stop being you
- cygx 11y agoIf I'm not mistaken, that probaby should have read $++;
- hoodoof 11y agoThis. This thread right here is the magic of Perl.
- deleted 11y ago[deleted]
- stone-monkey 11y agoI also attended the unveiling yesterday; If I remember correctly, I'm about 95% sure your assumption is correct.
- labster 11y agoCorrect. $ is an anonymous scalar (which autovivifies to 0 and increments in $++). There's also anonymous array @ and anon hash %. The hash form you can see in action here, in the one-liner mad-libs code: http://rosettacode.org/wiki/Mad_Libs#Perl_6 http://rosettacode.org/wiki/Mad_Libs#Perl_6
- inopinatus 11y agoAlso: react { whenever } # Code runs when a condition is met. I can only think this must be a generic https://en.wikipedia.org/wiki/COMEFROM https://en.wikipedia.org/wiki/COMEFROM. It is sure going to create some viciously subtle bugs.
- cygx 11y agoCf http://www.jnthn.net/papers/2015-spw-concurrency.pdf http://www.jnthn.net/papers/2015-spw-concurrency.pdf
- atemerev 11y agoSome languages are for earning your daily bread (like Java, or Objective-C). Some, like Haskell, are for intellectual pursuits. Perl is for poetry. For seeing the impossible and going back.
- rendambathu 11y agoYou Sir, have the heart of a Poet!
- wiremine 11y agoOne of the best summaries of Perl I've seen. Thanks!
- rbanffy 11y agoCode is executable poetry. It moves the hearts of computers.
- oldmanjay 11y agoI haven't looked, but I really hope Perl 6 held on to the 50 different ways to do any one thing. Pulling out my hair in frustration from trying to deal with Perl written by other people saved me all manner of haircut money in the 90s.
- Mithaldu 11y agoIf you had tried to invest a little time to actually learn Perl, you might still have a beautiful mane on your head.
- Zelphyr 11y agoI suspect a lot of people didn't take the time to actually learn Perl which is why there's so much "there's-more-than-one-way-to-do-it" Perl code in the wild. For whatever reason, I went the PHP route and I can say from nearly 20 years experience that PHP has the same problem even if it doesn't have the same philosophical approaches as Perl. Too many people who never actually learned the language producing near unmaintainable code.
- Mithaldu 11y agoYep, it is absolutely a problem. I even made http://perl-tutorial.org http://perl-tutorial.org to battle it somewhat. The worst part is that people who believe they learned Perl by doing, instead of reading the reference docs and structured introductory texts, believe themselves to know Perl and speak publicly in the belief that the knowledge gained that way represents universal fact.
- chaostheory 11y agoIf you have globals, nulls, gotos, or whatever dangerous (but sometimes useful) features (e.g. states); surprise surprise people will end up using them at one time or another. Perl is not the first nor will it be the last (imperative) programming language helps people fail too easy.
- 11y ago
- raldi 11y ago> Finally, there's a way to stop non-identical strings from matching just because they have the same numerical value. Um, this has been there for decades: $a = '123'; $b = '123.0'; print $a == $b ? 'y' : 'n'; # prints y print $a eq $b ? 'y' : 'n'; # prints n
- kbenson 11y agoI read it that way at first, and was going to comment on it, then I figured the point was smart match being able to distinguish, not being able to do your own test.
- osswid 11y ago'eq' does the test you are asking for.
- kbenson 11y agoYes, I'm aware, but when using smart matching (that is, the given/when pair which has had it's fair share of trouble, and is currently experimental after having not been), you sometimes want to be able to distinguish between those types of tests when doing a smart match[1]. I believe the article was referencing this, and so while yes, anyone who knows how to use Perl will use the appropriate operator for the appropriate type of type operation, there are reasons to still want to distinguish what type of match is done by the smart match operator, '~~'. 1: http://perldoc.perl.org/perlop.html#Smartmatch-Operator http://perldoc.perl.org/perlop.html#Smartmatch-Operator
- vezzy-fnord 11y agoPerl 6 appears to be the SNOBOL of our times, with grammars being a first-class lex, plenty of functional idioms, APL influences and a reasonable object system. Given how much of contemporary programming is munging, I can see it really picking up steam.
- aceperry 11y agoLarry Wall is a great guy. Unfortunately, I don't really like Perl. Maybe the new version will change my mind.
- bgilroy26 11y agoI love Perl [I have been to perl monger meetings and I had to look up how to 'unshift' in python today]. But Python3 is mostly just Python2 with a print function instead of a print keyword. It is occasionally non-trivial to port large existing code bases from Python2 to Python3, but it is practically always trivial for a Python2 programmer to write new code in Python3. I hope Perl 6 will get its own camel book!
- bbanyc 11y agoI remember buying the camel book ten years ago, and there was a slim Perl 6 volume next to it - http://shop.oreilly.com/product/9780596007379.do http://shop.oreilly.com/product/9780596007379.do I imagine its relevance to the Perl 6 that was announced today is next to nil.
- pcmonk 11y ago> it is practically always trivial for a Python2 programmer to write new code in Python3. Until you need to use some library that doesn't support python3. I think I've made the transition from python3 to python2 more than I have the other way around.
- kevin_thibedeau 11y agoI've been writing forward compatible py2 code for years using the __future__ imports to ensure proper semantics are preserved. When all my external dependencies have py3 support it becomes a breeze to upgrade using 2to3 and the rare occasional manual fixup.
- ash_gti 11y agoI'm pretty excited about the release of perl6. perl6 has a number of interesting use cases and features. I'll be happy to watch it evolve as more people pick it up and find new/interesting uses.
- chm 11y agoSo, for someone who has never read or written Perl code, where should I start? Perl 5 or 6? I get that they're different languages, but I want to see what "Perl" is like.
- kbenson 11y ago> but I want to see what "Perl" is like > get that they're different languages I'm not sure you do get it, unless you are talking about the "feel" of using it, in which case use either. They aren't just different languages because there's some things that break backwards compatibility, they are vastly different in many ways. If you want to know what current deployed Perl is like, look at Perl 5. If you want to look at what the "Perl" future is, look at both Perl 5 and Perl 6, since they'll both be around. If you want to see something new and different, look at Perl 6.
- chm 11y agoI was talking about the "feel", indeed. So for example, if someone wanted to experience what a Lisp is like, I could point them to Scheme. I want to know what "Perl" is like, but the fact that Perl 5 and 6 share the same name is a tad confusing for a newcomer. Precisely because I have no idea what "standard" Perl is. I guess Perl 5 it is, since it's already on my machine.
- eCa 11y agoThe Modern Perl book[1] is highly recommended. For web development, check out Mojolicious[2] or Dancer2[3] And Task::Kensho[4] lists recommended modules for various tasks. [1] http://modernperlbooks.com/books/modern_perl_2014/ http://modernperlbooks.com/books/modern_perl_2014/ [2] https://metacpan.org/release/Mojolicious https://metacpan.org/release/Mojolicious [3] https://metacpan.org/release/Dancer2 https://metacpan.org/release/Dancer2 [4] https://metacpan.org/pod/Task::Kensho https://metacpan.org/pod/Task::Kensho
- kbenson 11y agoThen I recommend perlbrew[1] for Perl 5, and rakudobrew[2] for Perl 6 if you decide you want to take a look there as well. They will let you quickly build and install any particular version of Perl you like, and allow switching between versions if you have the need. The Version of Perl included in most distros is rather old as, Perl 5 sees regular releases with new features. The one main hint I have for you (beyond reviewing the Modern Perl book, as my sibling comment recommends) is to understand context and what that means in Perl. Perl can look deceptively similar to C and other procedural languages, but there are some somewhat (still) radical ideas underneath that will leave you either scratching your head or grumbling in frustration if you don't understand context (list or scalar), and how it's relevant in almost everything Perl does. 1: http://perlbrew.pl/ http://perlbrew.pl/ 2: https://github.com/tadzik/rakudobrew https://github.com/tadzik/rakudobrew
- xiaq 11y agoCongrats! But shouldn't some kind of official announcement be made on perl6.org?
- iso8859-1 11y agoThere will be, when a stable version is released for christmas.
- brudgers 11y ago"If that's what it takes to make Ruby programmers happy..." Completely brilliant.
- wycats 11y agoIt's unnecessarily condescending, especially given that Ruby got `?` and `!` suffixes from Lisp, which far predates Ruby, and that Ruby itself is in many ways a descendent of Perl.
- brudgers 11y agoThe goal of Ruby is to make programmers happy. I started out to make a programming language that would make me happy, and as a side effect it’s made many, many programmers happy. Especially Web developers. But Ruby hasn’t reached developers who work on embedded devices, mobile devices, controllers, things like that. I hope to make them happy too. -- Matz [1] Larry Wall's comment recognizes Ruby culture and acknowledges that it is a good thing. Not surprising given that Perl 6, like Ruby is an everything-is-an-object language with a lineage from Smalltalk. Programmer productivity/happiness was one of its goals as well. [1]: http://siliconangle.com/blog/2011/08/31/qa-with-yukihiro-matz-matsumoto-the-creator-of-ruby/ http://siliconangle.com/blog/2011/08/31/qa-with-yukihiro-mat...
- kbenson 11y agoWell, Ruby also has quite a bit of lineage in Perl, so there's another layer to that as well. I think a lot of Ruby programmers that are unfamiliar with Perl would be surprised with how similar they are in some respects.
- brudgers 11y agoIt would not surprise me that parts of Perl made Matz happy.
- nocman 11y agoI really don't think Larry meant that to be condescending. The "worst" I could imagine is that he was poking a little fun at Ruby programmers. I'm sure he was just trying to be funny, but sometimes it's easy to misinterpret what people mean when you don't actually hear them say it, but only read it in print. I'd be very surprised if the comment was at all malicious.
- eweise 11y agoI've been waiting on the sidelines for 20 years but this release makes me think its finally time to jump in.
- curiousjorge 11y agoWay too late
- haberman 11y ago> One of the most impressive things Larry demonstrated was the sequence operator, and Perl 6's ability to intuit sequences. say 1, 2, 4 ... 2**32 > This correctly produced a nice tidy list of just 32 values -- rather than the 4,294,967,296 you might expect. Someone with more time than me needs to find an IQ test that is based around sequence questions like this and plug them all into Perl 6. So we can find out what Perl 6's IQ is and whether it has achieved AI.
- sp332 11y agoTry putting two spaces at the beginning of a line to stop HN from eating the asterisks. > say 1, 2, 4, 2**32
- ubernostrum 11y agoThank you. I spent far too long trying to figure out what sequence would start "1, 2, 4" and then have 232 be the 32nd item.
- haberman 11y agoOops, sorry! Fixed it.
- Someone 11y agoDon't be ashamed. http://oeis.org/search?q=1%2C2%2C4%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C232&sort=&language=&go=Search http://oeis.org/search?q=1%2C2%2C4%2C_%2C_%2C_%2C_%2C_%2C_%2... does not know it, either, it gives me http://oeis.org/A115346 http://oeis.org/A115346 That has 46 terms before hitting the right pattern. It also gives http://oeis.org/A188668 http://oeis.org/A188668 which has only four terms before hitting 1, -2, 4, ..., -232. I guess one could try and tweak either to get a matching sequence, but I don't see a trivial way to do it that is mathematically 'nice'. It is easier to start with http://oeis.org/search?q=0%2C0%2C1%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C_%2C200&sort=&language=&go=Search http://oeis.org/search?q=0%2C0%2C1%2C_%2C_%2C_%2C_%2C_%2C_%2..., though. It gives me http://oeis.org/A242067 http://oeis.org/A242067 "Number of triangular numbers between n^2 and n^3 (excluding the bounds)." So, this sequence 'must' be "n plus number of triangular numbers between n^2 and n^3 (excluding the bounds)."
- muraiki 11y agoI've found these resources helpful for learning Perl 6: http://learnxinyminutes.com/docs/perl6/ http://learnxinyminutes.com/docs/perl6/ is a pretty good intro to Perl 6 if you just want to jump into things. http://www.jnthn.net/papers/2015-spw-perl6-course.pdf http://www.jnthn.net/papers/2015-spw-perl6-course.pdf is more slowly paced but provides greater detail. Also, the people in #perl6 on Freenode are all awesome and are usually quick to help beginners unless they are in the middle of fixing some crazy bug.
- moron4hire 11y agoEmpty string, array, and hash are falsey? Ruination! This is terrible! Also, types are falsey? What sense does that make?
- the-owlery 11y agoPerl 6 has slides, IRC, a skim-through (learnxinyminutes), reference docs, examples, but alas no solid tutorial. This, IMO, will be a major problem if it persists until Christmas.
- tcdent 11y agoI'm really surprised this site is the source y'all chose to upvote. Not only was the second-newest article published in 2012, they also have an assortment of other questionable content[0][1]. Advertising from rotten.com and a category named "Jonny Jihad" are also professional touches. I mean, whatever floats your boat, but HN, is this really one of your go-to trusted news sources? [0] http://www.pigdog.org/in_the_pink/html/interview_with_a_stripper.html http://www.pigdog.org/in_the_pink/html/interview_with_a_stri... [1] http://www.pigdog.org/pooniedog/ http://www.pigdog.org/pooniedog/
- lloydde 11y agoWhat source would you recommend?
- xtreaky 11y agoHere are the official words from Larry. There will be 2 beta releases and the major one in December. Larry goes by the handle TimToady http://imgur.com/1Vrpl2G http://imgur.com/1Vrpl2G
- stone-monkey 11y agoIf you doubt the legitimacy of the post, I can confirm there was an event[0]. I was also there, and the blog post syncs up to what I remember from the event. I am surprised there isn't some official post event write up from the event organizers, though. http://perl6releasetalk.ticketleap.com/perl-tech-talk/details http://perl6releasetalk.ticketleap.com/perl-tech-talk/detail...
- ambrice 11y agoSo is this a real thing? I've never seen this pigdog website before, it's second newest article was published in 2012, and there's no mention of this on the perl 6 home page or in the perl 6 announcements mailing list..
- steveklabnik 11y agoAt FOSDEM earlier this year, Larry gave the presentation they describe, and said that they were expecting a beta release at Christmas this year. So the general concept is legit, regardless of the site.
- jlarocco 11y agoI don't see how that makes this look any more legitimate. The FOSDEM website says they had over 5000 people attending, so it's not like Larry's talk was a big secret. And Perl 6 has been right around the corner forever, so a fake "Perl 6 is released" page could seem timely and legit in concept at almost any time in the last 10 years. Even if it's true, if they want anybody to pay attention they should announce it on perl6.org or at least a more professional looking page. If I were at work and opened a page with rotten.com banner ads, and "software jihad" all over the place, I'd close it immediately and hope nobody saw it.
- kbenson 11y agoNot being privy to the talk, my assumption was that the final shipping feature list was solidified, and that's what was being announced. It's still due at Christmas, and that was already known. I think the article's meaning was somewhat ambiguous with the title, and HN just ran with it. Nothing has been released (but apparently there's two beta's officially planned now, the first of which is in a week or so).
- steveklabnik 11y agoI don't mean that it makes the site legit. I just mean "Perl 6 is indeed coming this year."
- 11y ago
- rjurney 11y agoAnd nobody cares.
- zem 11y agoquetion for the early adopters: if i develop an end-user app in perl6 on linux, how easy is it for me to deliver it to a non-technical windows and/or mac osx user?
- kbenson 11y agoSince Rakudo also targets the JVM, not just MoarVM (the dedicated VM), I imagine it's not terribly too much work to get to the point where the app, included modules, and Rakudo/Perl 6 itself can be bundled together for delivery.
- z3phyr 11y agoWhen talking about Perl never forget to mention CPAN. Heck this library ecosystem is still great and running..
- kimi 11y agoCPAN installs are the reason I personally avoid perl like the plague today.
- Mithaldu 11y agoWhy?
- sofaofthedamned 11y agoSo do I, for the same reasons. At a previous job perl was used everywhere. As a language, it's quite nice. CPAN is horrible, though. No staging/stable/whatever versioning, new modules requires updating versions of existing modules which frequently broke - it's just not something that's enterprise friendly. I tried but failed to find a company that would support and curate a subset of CPAN modules properly. Does one exist now?
- Mithaldu 11y agoThere are multiple tools to do this on your own, with CPAN::Mini and friends, or Carton. I also don't know how long it's been since you last tried, but cpantesters and the other odds and ends of the ecosystem have helped tremendously in reducing published bugs. ( http://matrix.cpantesters.org/?dist=System-Command%201.115 http://matrix.cpantesters.org/?dist=System-Command%201.115 )
- scopesoft 11y agoCheckout Pinto, http://perlmaven.com/pinto-tutorial http://perlmaven.com/pinto-tutorial, which allows you to host your own CPAN mirror and have stacks. So you could have a "development" stack and a "production" stack, or a "perl-5.8" stack and a "perl-5.16" stack. Whenever you add or upgrade a module, it only affects one stack.
- deleted 11y ago[deleted]
- rjurney 11y agoYou launch Perl 6 without updating the fucking home page? So Perl. So perl.
- cygx 11y agoLaunchdate is still Christmas. Accordingly, the official 6.0 release is also known as 6.Christmas. Right now, we're only at 6.Birthday.
- iso8859-1 11y agoAccording to http://rakudo.org/how-to-get-rakudo/ http://rakudo.org/how-to-get-rakudo/ , Perl 6 is just a specification. What changes do you see in the specification between now and Christmas?
- cygx 11y agoNote that the 'Synopsis' has been demoted to be closer to a set of design docs than a formal specification - it's more about the test suite these days (cf first two paragraphs of http://design.perl6.org/ http://design.perl6.org/). Jnthn made a list of things that are supposed to be fixed by Christmas [1] as well as a list of things that probably won't make it into the 6.0 release [2]. [1] https://rt.perl.org/Public/Bug/Display.html?id=123766 https://rt.perl.org/Public/Bug/Display.html?id=123766 [2] https://gist.github.com/jnthn/040f4502899d39b2cbb4 https://gist.github.com/jnthn/040f4502899d39b2cbb4
- EGreg 11y agoPerhaps it was better veiled :)
- AceJohnny2 11y agoSounds like a v2.0 with feature bloat. ""Any infix operator can be replaced by itself in square brackets..." Later someone asked, "In a world of user-defined operators everywhere, how do you define precedence?" And Larry pulled out is tighter() and is looser(), noting that Perl 6 even has customizable precedence levels. "You can add an infinite number..."" It's been said that most of programming is about managing complexity. I'm unhappy with Perl in general because it makes it really easy to hide complexity. Perl 6 looks like it makes it even worse. Yes, it looks like an amazingly powerful and sophisticated language, and an amazing and respectable accomplishment, but my gut feeling is I'll hate seeing some in production...
- kbenson 11y agoA nice feature is that imports honor scope, so you can use a module and import functions or operators within a scope and not worry about it causing problems elsewhere.
- Grim_Reaper 11y agoIn Perl 6 a lot of reinventing the wheel and it so ugly.
- guard-of-terra 11y agoHaskell has custom operators too along with custom precedence, not too problematic.
- AceJohnny2 11y agoSounds like a v2.0 with feature bloat. ""Any infix operator can be replaced by itself in square brackets..." Later someone asked, "In a world of user-defined operators everywhere, how do you define precedence?" And Larry pulled out is tighter() and is looser(), noting that Perl 6 even has customizable precedence levels. "You can add an infinite number..."" It's been said that most of programming is about managing complexity. I'm unhappy with Perl in general because it makes it really easy to hide complexity. Perl 6 looks like it makes things worse. Yes, it looks like an amazingly powerful and sophisticated language, and an amazing and respectable accomplishment, but my gut feeling is I'll hate seeing some in production...
- dasil003 11y agoI would never want to use Perl at my day job, but I also wouldn't want to live in a programming universe where Perl didn't exist. Perl is a place where the pure joy of coding thrives.
- 72deluxe 11y agoI always found it obtuse and overly terse to the point of non-maintainability or readability, far worse than even C++. But that could be due to my lack of understanding, or being used to C-style languages and syntax. Good to see it still has a dedicated following.
- dasil003 11y agoHence the first 11 words of my comment.
- bliti 11y agoFinally.
- meeper16 11y agoGive 10 guys the same programming task in Perl, watch 10 completely different syntactically built innovations come from them.
- meshko 11y agoIs Duke Nukem Forever out yet?
- mindcrime 11y agoYes, all we're waiting for now is GNU Hurd, and software will be complete.
- alanh 11y agoI hate to indulge this thread, but feel obligated to note that Half-Life 3 is still naught but a name.
- whyever 11y agoHalf-Life 3 is not even vaporware. It was never announced, was it?
- alanh 11y agoThe ending of the last-released HL2 episode had a very “to be continued” feel to it, but more importantly, Valve has made statements about future releases moving away from “the episodic format” to “smaller releases” and possibly returning “to genuinely scaring the player,” but it all seems rather dead now. This section in Wikipedia has some relevant sources: https://en.wikipedia.org/wiki/Half-Life_(series)#cite_ref-37 https://en.wikipedia.org/wiki/Half-Life_(series)#cite_ref-37 Probably the funniest / saddest / most hopeful part of the whole saga is that at some point, a group of fans organized a sit-in at Valve HQ to plead for a commitment to HL3 :)
- jedharris 11y agoMy sense, playing with Perl 6, is that it could become a "pro tool" -- very deep and powerful. It needs to mature some (though it is very solid already) and to grow its ecosystem (though it can run much of CPAN via Inline::Perl5). Those who want to play can install from http://rakudo.org/how-to-get-rakudo/ http://rakudo.org/how-to-get-rakudo/ Larry's talk was a lot of fun, especially the way he zipped around between vi and terminal windows -- no need for presentation software.
- jedharris 11y agoA couple of other things that haven't been much highlighted: - Perl 6 right now runs very well on two back ends: a custom VM and the JVM. It is spinning up a Javascript back end, I think primarily for NodeJS. - Concrete representations are carefully separated from core semantics, so Perl 6 currently supports native values from C, Perl 5, Python, etc. It should be able to support native arrays as required for high performance scientific computing etc.
- mindcrime 11y agoWhatever happened to the ParrotVM? I always thought that it was somehow intrinsically tied up with Perl6.
- bmn_ 11y agohttp://www.modernperlbooks.com/mt/2013/02/goodnight-parrot.html http://www.modernperlbooks.com/mt/2013/02/goodnight-parrot.h... https://www.ohloh.net/p/parrot https://www.ohloh.net/p/parrot (contributor graph at the bottom)
- rurban 11y agoThey switched to MoarVM, which was a simplier and much faster rebooted variant of Parrot to get a timely Perl6 release. But it is still open to use any VM as backend. Currently there are two in rakudo, in parrot can be re-added trivially, e.g. to support other architectures and a better threading model
- 11y ago
- a3n 11y agoLong ago, Perl as a coding Leatherman, along with C/C++/Java. Python took Perl's place on my belt. I'm using Python2, because all the reasons everyone else gives, and because it's Python2 at work. I've been wondering when I'd finally decide/be able to move to Python3. And now I'm rubbing that faint Leatherman imprint on my belt, and wondering if I'll just skip Python3 for Perl6.
- xtreaky 11y agoHere are the official words from Larry. There will be 2 beta releases and the major one in December. Larry goes by the handle TimToady http://imgur.com/1Vrpl2G http://imgur.com/1Vrpl2G
- VanillaCafe 11y agoI had to look up GLR: the "Great List Refactor". http://pmthium.com/2014/10/apw2014/ http://pmthium.com/2014/10/apw2014/ "What exactly is the “Great List Refactor” (GLR)? For several years Rakudo developers and users have identified a number of problems with the existing implementation of list types — most notably performance. But we’ve also observed the need for user-facing changes in the design, especially in generating and flattening lists. So the term GLR now encompasses all of the list-related changes that seem to want to be made."
- xtreaky 11y agoHere are the official words from Larry. There will be 2 beta releases and the major one in December. Larry goes by the handle TimToady http://imgur.com/1Vrpl2G http://imgur.com/1Vrpl2G
- reuven 11y agoGiven how long it took to replace Perl 6, and the fact that I (and most others I know) have moved onto other languages, I can't decide if I'm more (a) surprised, (b) impressed, or (c) indifferent. Kudos to Larry for sticking with it, and for (I'm sure) introducing interesting ideas into the world of programming languages. That said, I have to wonder how many people will really use Perl 6 in their day-to-day work, and how many will look at it as a curiosity. For me, I'm afraid that Python and Ruby have replaced Perl, despite more than 10 years in which Perl was my go-to language. Maybe I'll return to it, but I sorta doubt it.
- jandrese 11y agoI don't know, there's something to be said for a language that isn't a moving target. You learn it really well inside and out and your effort isn't wasted as it is thrown away for some hot new fad language in a couple of years or find that everything you learned is now deprecated because the authors decided that functional programming is the bees knees.
- pbreit 11y agoWhat's Perl?
- Twirrim 11y ago> say [+] <3, 1, 4> x 2 It's like the perl developers saw the comments about perl being indistinguishable from line noise and decided to make it even more so. WTF?
- guelo 11y ago$ brew install rakudo-star <.... snip ....> $ perl6 > say "hello world, sorry for the wait" hello world, sorry for the wait >
- iso8859-1 11y agoThings that won't make it in to 6.christmas (the non-beta release): https://gist.github.com/jnthn/040f4502899d39b2cbb4 https://gist.github.com/jnthn/040f4502899d39b2cbb4
- jackdaniel 11y agoThis rant made me laugh one day: http://www.schnada.de/grapt/eriknaggum-perlrant.html http://www.schnada.de/grapt/eriknaggum-perlrant.html Disclaimer: I don't know Perl and I have no opinion if this rant is deserved or not yet it's an enjoyable read.
- Mithaldu 11y agoHe admits freely that he is ignorant about Perl, so i am unclear why you would bother to subject anyone else to such childish insults borne from nothing but fear and hate of the unknown.
- jackdaniel 11y agoI'm not sure what do you mean? I didn't write this rant. I find it amusing because it has some food for thought – for instance side note about rewarding idiotic behaviour. AFAIK Erik Naggum used Perl for a fair amount of time so I wouldn't call it a "fear and hate of the unknown" and it is about Perl hence also on topic. So your point is? Did you even bother reading it?
- Mithaldu 11y ago> I didn't write this rant. You bothered to link to it. > side note about rewarding idiotic behaviour The raw and naked idea is not entirely incorrect. Literally everything else in the sentences making up that section is. > Erik Naggum used Perl for a fair amount of time > Did you even bother reading it? Did you? I quote from the screed: I once studied perl enough to read perl code and spot bugs in other people's programs [...], but I don't write in it and I don't ever plan to use it for anything I don't know about you, but i find that unambiguous.
- rurban 11y agoI'm a born LISP programmer who also happens to know too much about perl. Eric has some points, but not too many. Javascript would fare much worse than perl with these arguments. It is far more dynamic, far more unregular and produces even worse code than perl5. See e.g. http://archive.oreilly.com/pub/a/javascript/excerpts/javascript-good-parts/awful-parts.html http://archive.oreilly.com/pub/a/javascript/excerpts/javascr... perl is kind of a lisp - much more than javascript - with some clojure like features, like shorter hash and array syntax.
- atomicbeanie 11y agoI may not write a bunch of Perl 6, but the planet is better for having Perl 6. That says a lot about the person who guided Perl 6 to completion, he's a gem of a guy. Thank you Larry!
- Grim_Reaper 11y agoPerl 6 is so fucking ugly and a lot of reinventing the wheel like gather and take syntax that similar to Javascripts/Python Generators. Perl 6 is king of symbols/operator! All symbols are added in Perl 6 that make your Perl code unreadable and unmaintainable. Larry Wall created the periodic table of operators for Perl 6. See this -> http://www.ozonehouse.com/mark/blog/code/PeriodicTable.pdf http://www.ozonehouse.com/mark/blog/code/PeriodicTable.pdf
- kriro 11y agoSomeone should implement a Duke Nukem Forever clone in Perl 6. Pretty excited about Perl 6. Haven't used Perl in a long time but there seems to be quite a bit of cool stuff and I'm very excited to see what a language where Larry had more free reign will be like. Xmas reading/coding here we go (how fitting)
- MrPatan 11y agoI don't think I'll ever use it again, but I'm glad that it exists.
- tempodox 11y agoOh my. I expect the next version of Perl to read my thoughts and to not require any source code from fallible mortals. The jury is still out whether this will produce more bugs than it abolishes. The answer is expected in time for the end of the universe.
- iamreverie 11y agooddly enough, a coworker and i were joking about how perl 6 would come out in the next 100 years on monday and just a few days later larry wall made us look foolish.
- the-owlery 11y agoPerl 6 needs a good tutorial.