Slashdot Mirror


Perl 5.10, 20 Year Anniversary

alfcateat writes "Perl 1 was released to the public by Larry Wall 20 years ago yesterday. To celebrate, Perl5Porters have released Perl5.10, the latest stable version of Perl 5. Happy Birthday Perl! Perl 5.10 isn't just a bug fix version: it's full of new features that I'm eager to use: named captures in regular expressions, state variables for subroutines, the defined-or operator, a switch statement (called given-when, though), a faster regex engine, and more. You can read more about the changes in perldelta."

24 of 304 comments (clear)

  1. Perldelta by Anonymous Coward · · Score: 1, Funny

    The link should be perlDELTA, not perldata.

  2. Re:Switch statements are syntactic sugar by mccalli · · Score: 2, Funny

    Switch statements are syntactic sugar. They're really not needed. Nested if/then/else do the same thing.

    Yeah, and who needs if statements anyway, or a high-level language come to that? Just syntactic sugar, I say we go back to sector-editing ones and zeros directly to the disk. Readability? Pah.

    Cheers,
    Ian

  3. Re:Switch statements are syntactic sugar by SamP2 · · Score: 2, Funny

    "Perl" and "readability" don't fit in the same sentence to begin with. :)

  4. Re:Switch statements are syntactic sugar by mccalli · · Score: 3, Funny

    "Perl" and "readability" don't fit in the same sentence to begin with. :)

    Lean on your keyboard for long enough, and you will eventually have produced a valid Perl script. Of course you won't know what it actually does, but then how does that differ from 90% of Perl scripts anyway?

    Cheers,
    Ian

  5. Is this the version by $RANDOMLUSER · · Score: 2, Funny

    that has the ORELSE operator?

    --
    No folly is more costly than the folly of intolerant idealism. - Winston Churchill
    1. Re:Is this the version by supersnail · · Score: 2, Funny

      If you are going to implement "COME FROM" can we have "ALTER GO TO" back please.

      For the younger among you this was a fiendish COBOL construct which altered the
      target of a plain "go to" somewhere else in the program. A wonderful tool
      for sadists whith a particular dislike of maintenance programers.

      --
      Old COBOL programmers never die. They just code in C.
    2. Re:Is this the version by Chysn · · Score: 2, Funny

      > that has the ORELSE operator?

              This is Perl we're talking about here. It would be "orels"

      --
      --I'm so big, my sig has its own sig.
      -- See?
    3. Re:Is this the version by vagabond_gr · · Score: 4, Funny

      This is Perl we're talking about here. It would be "orels". Or whatever you set the $=] variable to.
  6. Oh dear. by Xargle · · Score: 5, Funny

    "say() is a new built-in, only available when use feature 'say' is in effect, that is similar to print(), but that implicitly appends a newline to the printed string".

    *sigh* Nice to see they're still adding to the elegance of the language :(

    I wonder if threading actually works in production yet?

    1. Re:Oh dear. by macshit · · Score: 5, Funny

      "say() is a new built-in ... similar to print(), but that implicitly appends a newline ..."
      *sigh* Nice to see they're still adding to the elegance of the language :(

      Not to mention the new "lol()" built-in, which is like say(), but also removes random letters from the string, and appends 17 exclamation points.

      Sometimes I wonder about Larry Wall.
      --
      We live, as we dream -- alone....
    2. Re:Oh dear. by Speare · · Score: 5, Funny

      Not to mention the new "lol()" built-in, which is like say(), but also removes random letters from the string, and appends 17 exclamation points. Better than the first draft of lol() which replaced letters from the string with l33t equivalents. They found it was a security risk because people could just inject eval { lol($_) } and it was valid Perl code to cause a kernel panic.
      --
      [ .sig file not found ]
    3. Re:Oh dear. by funaho · · Score: 5, Funny

      So Perl is getting kinky. You can tell it to "say my $name" now. :)

  7. Re:Aren't these two unrelated events? by supersnail · · Score: 5, Funny

    Get real -- this is perl we are talking about.

    A programming language used for poetry.

    A programming language where "bless" is a basic operation.

    A programming language which borrows the "understood" syntax from English.

    A programming language where all published examples contain variables "Foo" and "Bar".

    Of course they are going publish a new release on the twentieth anniversary. I dont think it occurred to anyone in the perl community not to.

    --
    Old COBOL programmers never die. They just code in C.
  8. Re:Switch statements are syntactic sugar by ajs318 · · Score: 4, Funny

    At least Perl knows that adding numbers and concatenating string are different operations.

    2 + 3 == 5 (Perl isn't that weird)
    2 + "3" == 5 (not a TypeError as in Python)
    "2" + 3 == 5 (not "23" as in JavaScript)
    "2" + "3" == 5 (not "23" as in both JavaScript and Python)

    --
    Je fume. Tu fumes. Nous fûmes!
  9. Re:Switch statements are syntactic sugar by mccalli · · Score: 4, Funny

    >>Yeah, and who needs if statements anyway...
    >You wrote something accidentally insightful. Look at the following expression:...


    Away - away foul Lisp advocate, and darken not my doors again!

    Cheers,
    Ian
    /tongue-in-cheek

  10. Re:Hmmmmmm by Tony+Hoyle · · Score: 5, Funny

    I always though of Parrot as of a project that was born dead.

    You *know* what kind of responses you are asking for when you write something like that don't you....

  11. Re:Hmmmmmm by doti · · Score: 5, Funny

    I always though of Parrot as of a project that was born dead. It's not dead, it's resting.
    --
    factor 966971: 966971
  12. Re:Hmmmmmm by tha_mink · · Score: 2, Funny

    I always though of Parrot as of a project that was born dead.

    It's not dead, it's resting. the norwigian blue prefers kippin' on its back. its a beautiful bird....loverly plumage
    --
    You'll have that sometimes...
  13. Re:Switch statements are syntactic sugar by Fujisawa+Sensei · · Score: 2, Funny

    Not only do they increase readability of the code in many cases

    Readability? You do realize this is Perl we're talking about?

    --
    If someone is passing you on the right, you are an asshole for driving in the wrong lane.
  14. Re:Switch statements are syntactic sugar by Tony+Hoyle · · Score: 2, Funny

    While statemets? pah. setjmp and longjmp ftw.

  15. recursive patterns by hey · · Score: 5, Funny

    The new recursive patterns should increase perl's readability.

  16. Re:Hmmmmmm by $RANDOMLUSER · · Score: 4, Funny

    It's not dead, it's resting.
    I bloody well know a dead parrot when I see one!
    --
    No folly is more costly than the folly of intolerant idealism. - Winston Churchill
  17. Bold perl hackers, I salute you by anilg · · Score: 4, Funny

    With 'given-when', you have broken into lands no other languages dared. I now await the addition of 'conclude-basedon' and 'eithernot-ifonly' to complete the glory that is perl.

    --
    http://dilemma.gulecha.org - My philospohical short film.
  18. Re:Implicit vs. explicit parsing by ajs318 · · Score: 2, Funny

    Casting from string to number should always be done explicitly, with precise definition of the data type you cast to, and ideally with an error catching block in case something goes wrong. Letting it be done implicitly is a recipe for headache.
    Let me guess: You like Pascal. The language that, if it was a car, would have only one pedal and two forward gears.

    I program in high-level languages precisely because I don't want to have to think about whether something is a string or a number. I have bought and paid for, with my own money, earned by effort of hand or brain, enough RAM, disk space and CPU cycles to afford myself that little luxury. I grew up with 1980s 8-bit machines, learned to use instructions as numeric constants, when to bit-pack and when not to (the extra unpacking code can negate the saving), and all the other ways you can shave a byte off here or there (even putting code in the framebuffer and hiding it by palette-switching mid-frame). Now the computer is smart enough to take care of all that trivial crap, leaving me to sweat the big stuff.
    --
    Je fume. Tu fumes. Nous fûmes!