Slashdot Mirror


Perl 5.8.1 RC1 Released

moksliukas writes "Perl 5.8.1 RC1 has been released. A major change is that due to security reasons, the "random ordering" of hashes has been made even more random. As always, there are other numerous changes, including some improved utf-8 handling support, deprecation of 5.005 style threads, $* magic variable, pseudo-hashes and a number of other improvements. As usual, perldelta summarises all changes."

5 of 18 comments (clear)

  1. ...and "upgrading" will be a headache by tibike77 · · Score: 2, Interesting
    ...for some.

    Quoting from their "delta":
    Incompatible Changes:
    Hash Randomisation (The added randomness may affect applications[...])
    Unsafe signals again available(from safe to unsafe then back to safe then back again and so on and so forth until your head explodes)

    ...and that's just quoting *some* small portion of it...
    Makes you wonder "why bother upgrading when they'll change it back again in a few and I'll have to re-check my code"...
    --
    By reading this signature you agree to not disagree with the post you just read.
    1. Re:...and "upgrading" will be a headache by Hard_Code · · Score: 3, Insightful

      I didn't read the whole changelog, but I did read those two sections. Applications will only break if they relied on specific random ordering ACCROSS EXECUTIONS. E.g., if you dumped the contents of a hash into a file on two runs, and then compared, you may now get different ordering on identical data, whereas before you would (coincidentally) get the same random ordering and there would be no difference between the files. You probably shouldn't have been relying on this to begin with.

      --

      It's 10 PM. Do you know if you're un-American?
  2. Re:Perl6 is a mistake by Cecil · · Score: 3, Insightful

    (and not one with loads of irritating whitespace thank you very much).

    Ok, have you actually tried python?

    My responses to your responses:

    No -- The whitespace is hardly irritating. It makes the code readable and clear. It's beautiful. I thought it would be a pain at first until I realized that "Hey, all python's doing is enforcing (and interpreting) the way I already write my code, and the way that code should generally be written IMHO.

    Yes -- And you still think it's irritating whitespace? If you're one of the people who tries to fit too many things onto one line, and don't include whitespace to make it clear what the hell you're doing, those are the sort of people who should be forced to use python. ;)

  3. Re:Perl6 is a mistake by togofspookware · · Score: 2, Insightful

    > Recently I've started using Ruby as well

    Yeah. Ruby's awesome. Cleaner than Python and easier to write than Perl, IMO. But how do I use SSL? :-o!

    > The whole thing is an exercise in
    > pseudo-computer science masturbation
    > with little real purpose

    Which is exactly the reason I'm going to love it :-D

    > (and not one with loads of irritating
    > whitespace thank you very much)

    I didn't like that much, either, but I found that a bigger issue, for me, was that I was constanly having to read the reference guide to figure out which module to import to do something really simple. Also the inconsistancies (sp?) in naming bugged me. Sometimes things are capitalized, sometimes not, sometimes with underscores, sometimes without... is it spelled "HTTPRequest", "HttpRequest", or "http_request"? mmm. depends on the module. gotta get the reference out...

    I actually tried using Python a couple times, but never got the hang of it. As oppoesed to Ruby which I picked up right away and have been using ever since.

    --
    Duct tape, XML, democracy: Not doing the job? Use more.
  4. Re:Perl6 is a mistake by Anonymous Coward · · Score: 2, Interesting

    no the whitespace is great. the poster above is obviously a troll but personally I could never dig python's object model, or the scoping rules, last time I checked them out. I could never remember what was a method and what was a builtin. And making lambda functions was goofy (no closurers).

    I think this all is being fixed but I was turned off by the "work in progress" feel that Python had. It's like Guido had a few good ideas and hammered them into a language without thinking it through.

    Ruby on the other hand was like a breath of fresh air. The fact everything is an object instantly frees up needed brain cells to remember other things.

    Just an idea. If you're a "I hate Perl" fanatic, don't blindly choose Python as your "new favorite language", give Ruby a try.

    I'm saying this mostly because I REALLY wish Ruby had a nice collection of add-ons the way Perl does, and the more people are interested, the more will write cool modules and I won't have to grudgingly return to Perl for my projects.

    Also, the poster above is WRONG about the regular expressions in Perl 6. We NEED a new regex syntax desperately. I'm tired of writing '(?:foo|bar)' when something like '[foo|bar]' or '(foo|bar)' would be clearer. Unfortunately all the other languages picked up this crap as "perl-style regexps".

    I also wish Perl6 would allow folks to define their own regexp metacharacters, there are tons of cool unicode characters to use.... my co-workers would kill me but fuck 'em and their unicode-ignorant computers. :-)