Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Perl Open Source Programming Upgrades

Perl 6 Released (wordpress.com) 145

Earlier this month, we noted the Perl 6 advent calendar. Now, an anonymous reader writes to note that, right on schedule, and after 15 years of work, Perl 6 has been released. The top two bullet points in the linked description say that the newest Perl "retains the core values of Perl: expressiveness, getting the job done, taking influences from natural language, and pushing the boundaries of language design," and that is "has clean, modern syntax, rooted in familiar constructs but revisiting and revising the things that needed it." However, while it's nice to see Perl 6 reach official release, the team behind it takes pains to note that work goes on: "We will continue to ship monthly releases, which will continue to improve performance and our user’s experience." Further, "[T]his Rakudo release is not considered the primary deliverable for this Christmas; it is the language specification, known as “roast” (Repository Of All Spec Tests), that is considered the primary deliverable."
This discussion has been archived. No new comments can be posted.

Perl 6 Released

Comments Filter:
  • by randalware ( 720317 ) on Saturday December 26, 2015 @12:58AM (#51185075) Journal

    First post,

    I love Perl

    • by Anonymous Coward on Saturday December 26, 2015 @09:07AM (#51185781)

      Perl 6 has not been released "after 15 years of work". It has been marred by one disaster after another. It has been released after 15 years of failure.

      Those who have been following its development then entire time will remember the Parrot virtual machine [wikipedia.org] shenanigans, which wasted many years, and prevented a usable Perl 6 implementation from becoming available.

      Then there was the Pugs [wikipedia.org] implementation of it, which actually seemed slightly promising at first. That, of course, turned into a disaster when the lead programmer decided to change his gender [wikipedia.org]. (I'm not even joking!)

      There's also Perl 6's absurd logo [perl6.org], which renders Perl 6 unusable in any serious environment. We'd be laughed at if we showed the Perl 6 home page to managers, executives or clients when advocating for the use of Perl 6. They'd think we were pulling their leg by using a language with such a childish logo.

      Lately the focus has been on Rakudo [wikipedia.org] which has taken years to produce something even minimally useful. I've read reports that it's slow and forces you to use some obscure MoarVM they've created (this sounds to me like they're on the road to another Parrot-style failure!) or the JVM.

      Perl 6 has been a shameful episode in the history of programming languages. It's even worse that it has permanently tainted the Perl name.

      • by b2gills ( 537406 )
        Actually Camelia ( the butterfly logo ) is a test to see if we want you in the community.
        You have failed the test.
      • Re: (Score:1, Offtopic)

        So, Pugs turned into a disaster after the lead programmer "decided to change his gender". That's quite a lovely way to describe somebody's personal struggle, or an insightful way to describe what happened to Pugs (several parts are used in Perl 6, so not a disaster). She (not a he, but a she) is still followed by many of us, and when anybody in the Perl community talks of her, it is with fondness and respect.

        Next to that, you must really really hate the fact that at least three other transgenders have wor

        • by jmaslak ( 39422 )

          +1.

          I've been programming in Perl for 20 years. Perl 5 is a great language - it did things 20 years ago that are trendy now - things like closures, functional style (if you want it), autoboxing, etc - certainly these weren't new then, but they were new to many Unix people at the time. It also happens to be extremely concise and evolving (5.22 is quite evolved from 5.0, because, among other things, it has included aspects of Perl 6). Perl 6 is going to be a great language too, as the creator wasn't after cre

        • +1 from me too.

          As someone who has tried (and failed) several times to learn Haskell, I cannot describe how much I am in awe of someone like Audrey Tang and her sheer brain power.

      • "It's even worse that it has permanently tainted the Perl name."

        There's a workaround:

        #!/usr/bin/perl -T
  • by mfearby ( 1653 ) on Saturday December 26, 2015 @01:01AM (#51185079) Homepage

    Yawn. The world has moved on. I used Perl 15 years ago but Perl 6 has taken far too long. Why should I use it now over anything else?

    • Re: (Score:3, Interesting)

      by Anonymous Coward

      Are you kidding? I'm still coding in Forth!

    • >Yawn. The world has moved on. I used Perl 15 years ago but Perl 6 has taken far too long. Why should I use it now over anything else?

      To be fair, the first C++ standard took forever to come out (in '98), and then they didn't come out with a significant revision again for 13 years, but C++11 was well worth the wait.

      • by shutdown -p now ( 807394 ) on Saturday December 26, 2015 @05:15AM (#51185449) Journal

        The thing about C++ is that in all that time, no-one has come up with an acceptable replacement, so people stuck to what they had.

        Not so with Perl.

        • Re: (Score:2, Informative)

          by Anonymous Coward

          The thing about C++ is that in all that time, no-one has come up with an acceptable replacement, so people stuck to what they had.

          Not so with Perl.

          The thing about Lisp (which came out in 1958) is that in all that time, no-one has come up with an acceptable replacement. Greenspun's tenth rule of programming: Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp. Well, perhaps Smalltalk.

          • Lisp has another problem - there's no language that can do 80% of what it can, but that 80% also happened to be what most programmers don't actually need (or at least not need enough to be worth all the idiosyncrasies that are necessary to enable it).

        • So true. I wrote some pretty large programs in Perl back in the day. It has some excellent features, but today I only just maintain existing software written in perl5, and meanwhile Python adopted all the best things from Perl, and mostly avoids a lot of the worst. Just the fact that there's a real standard for it and alternate implementations puts it on a different level. Perl was far ahead of everything else in 1995, and the Perl community squandered all of that.

      • C++ has largely been backwards compatible (even when it shouldn't). It means someone can recompile their code with a C++11 compiler and generally it still works. Conversely feed your old Python, Perl or PHP code into the latest version and everything falls over in a heap.
    • I got tired of waiting for Perl 6 and switched to Ruby... 11 years ago.

      I think the only reason would be, "I use Perl and I like the new stuff." If that isn't you, this probably isn't your stop.

    • by JustOK ( 667959 )
      How many years ago did you use Perl 15?
    • by dbIII ( 701233 )
      Look at PHP as normally used - "anything else" is an improvement.
      It may as well be Perl again.
    • by short ( 66530 )
      Because it should be better than Perl 5 and there isn't anything better than Perl 5.
    • I used Perl 15 years ago but Perl 6 has taken far too long.

      How did you get a copy of Perl 15? I thought that was still 200 years away...

      • by mfearby ( 1653 )

        Given that it took 15 years to complete the last release, and assuming the same for all the others (unless they do a Firefox and issue a new version every month), then we could expect Perl 200 in the year 4926, and by then our new alien overlords will have mandated the use of something else, I expect (if humans haven't been turned into slaves or food, of course).

  • by EmeraldBot ( 3513925 ) on Saturday December 26, 2015 @01:57AM (#51185135)
    It's April Fools already! The older I get, the faster time flies by, I swear...
  • by Anonymous Coward

    "This Rakudo release targets those tests (over 120 thousand of them), and passes them all on at least some architectures when the moon is in the right phase."

  • In all seriousness, I suppose I'll take a look at it. I'm guessing, however, that Perl 6 is not going to be widely used or liked; it's simply been too long, and Perl isn't even used that much anymore either. That may not impact the dev team directly, but it does mean they're not going to get the support they did with Perl 4 and 5, although I am curious in what they improved during these 15 years.
    • I use perl daily, still. It's kinda fun, and while no one was looking, it got to be fast and pretty bug-free, along with well, CPAN. Perl 6 evidently tossed the language and runting optimized into one another for the JRI...and fixed what wasn't broke - it really didn't need any more syntactic sugar. I use perl 5.xx in my Lan of things as it's quick to program and is even fairly fast on small cpus - as in raspi and friends. 6 won't match that, and I don't have time to learn new quirks.
      • by alantus ( 882150 )

        My feelings exactly.

        I love Perl for its power. I love CPAN, POD, etc. It is my swiss army tool for everything between quick one-liners and programs with complex data structures.

        The current Perl 5 interpreter is fast and efficient. And I never felt the language itself was missing anything important (although using it for OO is a bit awkward).

        The only thing they should fix in Perl is support for unicode filenames in Windows platforms.

        • The only thing they should fix in Perl is support for unicode filenames in Windows platforms.

          In the past, I could work it around using the Win32::OLE [cpan.org] (with CP_UTF8) and the host scripting interfaces [microsoft.com].

          But if I recall correctly, with Strawberry Perl, in couple of cases, I had no problems with the unicode file names.

        • Moose "fixes" most of the shortcomings of Perl 5's OO, and, while I still roll my own Perl 5 OO code, I've become more enamored with Moose over time. Not for repeated startup scripts that are invoked 1000s of times because of the startup overhead still, but, for things like Catalyst use it's still great. I'm currently working on a Catalyst project - with Moose at the backend for OO. Good for that.

      • I think the fundamental problem with Perl 6 is nothing in the language itself, but the choice of name. Perl 5 and Perl 6 both suffered because a lot of people took a "wait and see" status on whether to adopt either language. If Perl 6 had been Flooby or Rara or something else, Perl 5 users and adopters could have continued on their merry way and Perl 5 would be more popular today.

        In terms of performance, Perl 6 sacrificed a lot of performance at launch by being created as a standard instead of an imple
    • by jbolden ( 176878 )

      I agree with your general point but not your details.

      I would bet that more people use Perl 6 than use Perl 4 when it was released. Perl 3 was a very niche language, trying to replace the bash (csh, tcsh) + sed + awk style of scripting. It mostly was poorly known. There was much less Unix in those days, most systems which required admining were still legacy minis. Perl 4 was a huge success and then around the same time the World Wide Web made CGI gateways important which coincided with early Perl 5. ...

  • Well OK that is a bit much... but looking forward to explore Perl 6 in the New Year.

    • by KGIII ( 973947 )

      I'm sure I'll bump into it eventually. I think Perl comes installed with everything. I don't remember the last time I actually installed it. It probably comes default on Toaster Linux.

      ~$ perl --version

      This is perl 5, version 20, subversion 2 (v5.20.2) built for x86_64-linux-gnu-thread-multi
      (with 51 registered patches, see perl -V for more detail)

      Copyright 1987-2015, Larry Wall

      I'm pretty sure I did not install that. If I need something quick and dirty (I don't) then I guess it's always there. I'd remove it but I know that if I do, I'll think of a reason to use it. I'm trying to learn Python now. It has been too long since I've done much coding - except in PHP and not even that for seven or eight yea

  • How much you wanna be that because PHP just had their first major version increase in over a decade just this very month is the only real reason that Perl decided to do the same? Now I'm personally not trying to advocate or attach either language here, just pointing out the interesting comparison and timing.

    • by klapek ( 4200769 )
      Here we go again: perl6 is not a major version of perl5. It's a completely different language. The last major version of perl5 is 5.22.0 released 2015-Jun-01(http://perldoc.perl.org/perlhist.html). The strongest point I have against perl6 is it's confusing name and the fact it's ruined the perl work market.
      • by dougmc ( 70836 )

        and the fact it's ruined the perl work market.

        How has it ruined the perl work market?

        • by Anonymous Coward
          I don't think ruined is the right word. It did however make the suites think that perl was dead. Seen a lot of projects where they wanted to rewrite perfectly good perl5 code into something else. Not because it did anything wrong but because perl6 was taking too long and they didn't wanted to invest more into perl5 which they thought was EOL. Perl 5 is still under heavy development with a new major release every year, often full with new stuff. Perl 5 is not dead and will continue to live on and be develope
        • by klapek ( 4200769 )
          By making people think perl5 is obsolete and waiting for perl6. In the meantime(15 years!) many gave up waiting and gave up perl all together. Can you name one company that began a new perl project in the last 5 years?
          • by b2gills ( 537406 )
            I'm sure that one of these is less than 5 years old: Lacuna Expanse, Duck Duck Go, Geekuni, Questhub, The Game Crafter, Treasurer's Briefcase
            • by klapek ( 4200769 )
              treasurersbriefcase.com is 403, geekuni is perl related. Duck Duck Go is with us since 2008. The others are quite obscure.
      • by jbolden ( 176878 )

        I think that's a completely inaccurate apologetic. And I say that as a guy who wrote a lot of Perl 5 code during the 1990s. Perl 6 was born from the Perl 5 community's desire to make major changes to Perl. If it had come out in 2002 it would certainly have been "the next major release of Perl". It's just that the community bit off way more than it could handle, failed repeatedly...

        No question the Perl work market was harmed by the Perl 6 fiasco. Failure to build a new version in a timely fashion creates

  • by spauldo ( 118058 ) on Saturday December 26, 2015 @03:06AM (#51185255)

    One thing that caught my eye was this:

    Non-digit unicode characters with a numeric value (½ and such) can now be used for that numeric value

    and

    Provide tau constant (also: )

    (There's a Unicode tau there that slashdot won't pass)

    I've seen this in Emacs LISP, but I haven't seen it elsewhere (granted, I mostly use older languages...). I imagine non-ASCII characters in code are going to be a point of contention among developers.

    Related:

    Superscripts can now be used for integer powers

    I haven't payed much attention to Perl 6 (I use Perl 5 for a lot, though), but now I'm looking forward to playing with this.

    • So whereas in other programming languages, you have to waste 200 milliseconds typing combinations of characters like "1/2" or "**2", now you can instead waste five minutes drilling down through menus like "Edit->Insert->Other->Symbol...", then searching for the appropriate page out of 50 entries in a drop box like "Smileys", "Electrical Symbols", "Arrows", "Connectors", ahhh, there it is: "Mathematics (1 of 7)", then scan a grid of about one hundred icons and finally click on your eye-candy symbol.

      • For the small number of such symbols I use regularly, I make up a text file (called "insert symbols") that has these symbols so I can copy & paste them where I need them. I wouldn't use them to replace **2, but I use the little circle to replace "Degrees" when talking about temperatures very regularly.
      • Perl 6 supports both. You can use U+00AB or (that's "less than", "less than", if the ASCII characters get swallowed by Slashdot). No time wasted.
    • One thing that caught my eye was this:

      Non-digit unicode characters with a numeric value (½ and such) can now be used for that numeric value.

      Whew! The lack of that has really hindered me in writing the - literally - tens to hundreds of thousands of lines of Perl 5 code I've written over the years. Now I can get to work! (Still doing everything one can do (perhaps differently) in Python, btw.)

  • by Billly Gates ( 198444 ) on Saturday December 26, 2015 @03:37AM (#51185293) Journal

    Yo yo hipster web developers. The new rockstar language is Erlang reborn aka Outlaw Techno Psycobitch [youtu.be] which you can write hipster low 16 color flat modern impress your cat applications and websites!!

    Perl and Ruby on rails is sooo last decade man for crusty developers

  • by bads ( 141215 ) on Saturday December 26, 2015 @03:59AM (#51185341)

    The Perl 6 Architect writes about the 7-8 years work put in to get this far at https://6guts.wordpress.com/20... [wordpress.com]

    "In the coming days, weâ(TM)ll also produce a Rakudo Star release â" which consists of the compiler along with documentation and a selection of modules â" and that will also have an MSI, to make life easier for Windows folks."

    There will also be perl 6 speedups in a series of monthly releases next year.

    A good starting point with download instructions and docs links is
    http://perl6.org/downloads/ [perl6.org]

    Have fun!

  • I'm not sure I like all that simplification. I mean, I kinda liked it when @array[ 1 ] and $array[ 1 ] had different results (but worked on the same array).

    • by cruff ( 171569 )
      I'm not sure I have found a single document that I would call a language specification. They seem to say the language will be officially defined by a bunch of unit test definitions.
      • If you can't remember the spec implied by 120,000 unit tests, maybe Perl 6 is not the language for you.

        By which I mean, maybe it's not the language for anyone who isn't one of the core developers.

        While I once eagerly waited for Perl 6 to be done, its developers seem too busy adding regex modifiers and questionably valuable parser support for Unicode fractions and superscripts (maybe next they will let developers provide overloading for subscript code points?) to explain when the language is a compelling alt

      • by Anonymous Coward

        I'm not sure I have found a single document that I would call a language specification. They seem to say the language will be officially defined by a bunch of unit test definitions.

        Perl6 Design Docs: https://design.perl6.org

  • by Anonymous Coward

    Well, let me be the first to say - that's really cool! No matter what your favorite language is, congratulations to the Perl 6 team are in order for their hard work and perserverance.

  • Why "Now" after a comma?

  • by TheRealHocusLocus ( 2319802 ) on Saturday December 26, 2015 @06:05AM (#51185511)

    repost [slashdot.org]

    Perl Festivity Level 1: Developers and users have gathered to nibble hors d'oeuvres and chat amiably with each other about the Modern Perl Renaissance. With every sip of their drinks Perl seems ever more striking. Some are gathered around the upright piano improvising songs that proclaim how it is faster, neater, and sharper than ever before with its asynchronous APIs.

    Perl Festivity Level 2: Everyone is talking loudly -- sometimes to each other, and sometimes to nobody at all. Perl seems even better. Perl Monks are patiently explaining syntax and style to potted plants and other nearby objects. Around the piano people are feeling fun and flexible, just as programming in scripting languages used to be. Someone is crooning a bawdy ballad where a couple of inexperienced DOM and CSS selectors encounter a very supportive bundled development server.

    Perl Festivity Level 3: Monks are arguing violently and defrocking one another over nested do...until loops that bail on exceptions. People are gulping down other peoples' drinks, placing hors d'oeuvres in the upright piano to see what happens when the little hammers strike as everyone bawls "Got my Mojolicious workin' ... but it don't work on Python!" They have lost count of their drinks, and the world is harmonious with blissful adherence to modern interfaces and standards.

    Perl Festivity Level 4: All the guests, hors d'oeuvres smeared all over their naked bodies are performing a ritual dance around a burning heap of tables and chairs in celebration of postfix dereference syntax, subroutine signatures, new slice syntax and numerous optimizations. The piano is missing.

    ~~ with apology and deference to Dave Barry [cmu.edu]

  • by Anonymous Coward

    Until it gets here

    https://www.perl.org/

    I ain't bothering.

  • For all those talking about a release of a compiler (but not yet including all modules and other support stuff), rather than the release of the language spec, this is a pretty half-baked "release". It sounds more like yet another dreary development pre-release such as we've been showered with for many years.

    From the Rakudo announcement [wordpress.com]:
    It passes the full set of language tests on selected architectures when the (quote) "moon is in the right phase".
    "There is still plenty of work ahead for us to improve speed,

  • I wonder if Larry Wall even still uses PERL...

  • Over the years of using Perl5 I have realized its greatest shortcoming: I have to type $/%/@ characters too often, what sometimes gets me - especially if I try to do something OO in Perl.

    I have looked (again) at Perl6 recently, and was appalled to see that it used even more of punctuation than the Perl5.

    As a way forward for Perl5, a special mode which allows to omit the $/%/@ qualifiers would be really nice. After all, Perl already has the "bareword" error handling: it shouldn't be too hard to make the

  • Not a Perl veteran, but as some one who have used Perl as one of the main programming languages from last 9 years and has written Production applications in Perl covering more than 50,000 LOC, I am pleasantly surprised to see new Perl 6 Language specification. It is new Perl, with better & cleaner syntax without compromising original Perl identity of being expressive, the language of programmers (more than the language of computers) and many other good things Perl has to offer to generations of Program
  • It really seems like Perl 6 is a solution in search of a problem. Twenty years ago, Perl 5 was literally better than nothing - an intermediate step between shell scripts and C. Ten years ago, it was a scripting tool I could use on otherwise restrictive embedded environments. Today, I only use it because I have this one legacy script I haven't yet bothered to rewrite. At no point have I been on a project and thought "Perl would be ideal for this". It's always been "Aw crap, guess I'll settle for Perl".

    T

Ocean: A body of water occupying about two-thirds of a world made for man -- who has no gills. -- Ambrose Bierce

Working...