Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Perl 5.8.0 Released

Posted by pudge on Fri Jul 19, 2002 08:29 AM
from the jhi-is-my-hero dept.
twoshortplanks writes "The latest version of Perl has been released, with new features such as better Unicode support, a new threads implementation, new IO layer support, and a whole plethora of bundled modules - plus a wonderful collection of regression tests and new documentation. The release notes and links to mirrors for download are on dev.perl.org." This is not a release candidate, it's the real thing, representing over two years of work by patch pumpkin holder Jarkko Hietaniemi and his merry band. Hugo van der Sanden is the new pumpking for perl 5.10.
This discussion has been archived. No new comments can be posted.
Display Options Threshold:
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • I assume that the source only is released so far. Time to start porting it to HPUX! I wonder if this will fix problems with Oraperl on HPUX 10.20... probably not.
  • Explanation of Pumpking (Score:5, Informative)

    by recursiv (324497) on Friday July 19 2002, @08:35AM (#3916060) Homepage Journal
    patch pumpkin n. [Perl hackers] A notional token passed around among the members of a project. Possession of the patch pumpkin means one has the exclusive authority to make changes on the project's master source tree. The implicit assumption is that `pumpkin holder' status is temporary and rotates periodically among senior project members.
    This term comes from the Perl development community, but has been sighted elsewhere. It derives from a stuffed-toy pumpkin that was passed around at a development shop years ago as the access control for a shared backup-tape drive.
  • Time for Berl? (Score:1)

    by Isle (95215) on Friday July 19 2002, @08:46AM (#3916121) Homepage
    Perl gets more and more features it is not designed for, making it potentially more and more ugly if you use all of them.

    Maybe it is time to dump Perl and start designing Berl = the Beautyfull Extraction and Reporting Language ;-)
    • Re:Time for Berl? (Score:4, Interesting)

      by Jeppe Salvesen (101622) on Friday July 19 2002, @08:48AM (#3916132)
      It's been done. They are called Python and Ruby.

      Frankly, Ruby has a lot of promise. I've been toying with it, and it feels like a pretty good compromize between java and perl.
      [ Parent ]
      • Re:Time for Berl? by kin_korn_karn (Score:1) Friday July 19 2002, @09:08AM
      • Re:Time for Berl? by kevin lyda (Score:2) Friday July 19 2002, @09:26AM
        • 1 reply beneath your current threshold.
      • Re:Time for Berl? (Score:4, Interesting)

        by jdavidb (449077) on Friday July 19 2002, @09:49AM (#3916581) Homepage Journal

        At Yet Another Perl Conference [yapc.org] this year there was a book auction [perl.org] to raise funds for Perl development. Tons and tons of O'Reilly, Manning, and other books, and not just Perl books. It was interesting to see where the interests lay. There were plenty of wisecracks and groans for Java, Python, and PHP books. (I picked up Learning Python for $10.) Interestingly enough, there was intense interest in the Ruby books, and no wisecracks. Went for a higher than average price, I believe.

        [ Parent ]
      • Re:Time for Berl? by mlinksva (Score:2) Friday July 19 2002, @01:50PM
    • Re:Time for Berl? by axxackall (Score:3) Friday July 19 2002, @10:06AM
  • Thread Question (Score:1)

    by MikeD83 (529104) on Friday July 19 2002, @08:53AM (#3916162)
    "- New Threads Implementation: A new multithreading implementation called interpreter threads, or "ithreads" for short, is available, their use instead of the old "5.005 threads" is strongly encouraged. The major difference is that in ithreads any data sharing must be done explicitly."

    Does this mean when you use fork() you must define a variable as global? I didn't think it was possible to declare a variable as global other than a "$var = 0". Also, does any one know if after forking how would a child return a variable to the parent?
  • Request (Score:5, Insightful)

    by Anonymous Coward on Friday July 19 2002, @08:54AM (#3916164)
    I learned perl using 5.0.0.5, or somesuch. I learned using version 2 of the Perl Book.

    It seems to be the case that the perl language has actually evolved a bit since 5. I am continually finding out about "new" features in Perl that i were not aware were there (invariably, the only ones that make a difference to me are the extentions to the Regexp system: there seems to be a whole class of (?X) operators that are not in my copy of the perl book).

    Is there anywhere that summarizes the various changes to perl since version 5? there are the perldoc perldelta documents (here is the perldelta document for 5.8.0 [perl.org]). However, these are complete, technical changelogs, and cover everything from language changes to small inconsistency smoothings to changes to obscure library functions to bugfixes in internal perl functions. Moreover, they do an even poorer job of explaining the consequences to the coder of things like (?>) than the perldocs :) It seems it would be a useful community project if someone were to take these changes and compile them into a sorted by type document-- I.E., all grammar changes, then all regexp changes, then library functions, etc., with sample code where germane.

    Really, now that i think about it, i guess what i would like is a summary of what they've done to the regexps since version 5.0 :)

    If no such document exists, maybe someone can write one and post it on PerlMonks [perlmonks.com] :)

    - super ugly ultraman
    • Re:Request (Score:4, Informative)

      by asobala (563713) on Friday July 19 2002, @09:21AM (#3916331) Homepage
      Well, when Perl 6 is released (a while yet, I think) you'll find radical changes to the regexps. See Apocalypse 5 [perl.com] for more information.
      [ Parent ]
      • Re:Request by Anonymous Coward (Score:1) Friday July 19 2002, @10:06AM
    • Re:Request by jcoy42 (Score:1) Friday July 19 2002, @11:35AM
      • Re:Request by Stary (Score:1) Friday July 19 2002, @01:03PM
      • Re:Request by Craig Shergold (Score:1) Friday July 19 2002, @05:33PM
    • Re:Request by maraist (Score:2) Friday July 19 2002, @12:11PM
    • Programming Perl by jbolden (Score:1) Friday July 19 2002, @12:51PM
  • by shoppa (464619) on Friday July 19 2002, @09:00AM (#3916203)
    From the announcement [perl.org]:
    Known Problems
    • Tied/Magical Array/Hash Elements Do Not Autovivify

    I never liked autovivified hash elements in the first place. It's such a pain in the butt to put a if (exists $hash{index}) before trying to access everything if I don't want autovivification. Don't take this as a slam against Perl, I love the language and the concepts, but there are a couple little nooks and crannies that ought to somehow be fixed. I say "somehow" because to do it with backwards compatiblity may be impossible.

  • Cocoa bindings... (Score:2, Interesting)

    by dowobeha (581813) on Friday July 19 2002, @09:07AM (#3916255)
    Now if only Apple would get the Cocoa bindings for Perl cooked up, so I could back-end in Perl and GUI in Cocoa...
  • Time to upgrade? (Score:2)

    by pemerson (179241) on Friday July 19 2002, @09:23AM (#3916342)
    How do you decide whether to upgrade or not?
    (rand() < 0.5) ? (print "Definitely yes\n") : (print "Outlook cloudy\n");
  • Worthy upgrade? (Score:2)

    by Coplan (13643) on Friday July 19 2002, @09:48AM (#3916569) Homepage Journal
    Is it worth upgrading at this point? Does anyone, having used it, say its all that much better?

    Most of what I do is basic anyhow...so from what I've read, I'm not sure its worth an upgrade at this point. I don't think my projects would benefit that terribly much from it.

  • Easy upgrade (Score:2, Informative)

    by Plutor (2994) on Friday July 19 2002, @09:59AM (#3916645) Homepage
    For those with Perl already, the following is an easy way to download and upgrade:

    perl -MCPAN -e 'install J/JH/JHI/perl-5.8.0.tar.gz'
  • by Junks Jerzey (54586) on Friday July 19 2002, @10:32AM (#3916864)
    I see people bashing Perl for it's supposed unreadability. I see people bashing Perl so they can advocate Python or Ruby. I see people making general, blanket statements about code readability, as if these opinions are always ready to burst forth, making the speaker a hit at parties.

    Arguments about programming languages on this level are pointless beyond belief. It's like arguing which pop band is better than another. Who cares? It's all opinion and hearsay.
  • ActiveState (Score:3, Interesting)

    by Flounder (42112) on Friday July 19 2002, @10:36AM (#3916884)
    ActiveState Perl is still 5.6. Any ideas when it'll be updated?

    I run the scripts on Linux, but I do my coding on a WinAMD machine.
    • Re:ActiveState (Score:4, Informative)

      by hobbs (82453) on Friday July 19 2002, @11:25AM (#3917239)
      ActiveState Perl is still 5.6. Any ideas when it'll be updated?
      ActiveState is already working on a 5.8-based ActivePerl, but the timeframe for release is not yet set (it will be this summer).
      [ Parent ]
  • RedHat Limbo (Score:1)

    by RichiP (18379) on Friday July 19 2002, @10:38AM (#3916893) Homepage
    If it just got released, what the heck is in RedHat Limbo that's marked perl-5.8.0-29?
  • Math class (Score:1)

    by FattMattP (86246) on Friday July 19 2002, @11:43AM (#3917379) Homepage
    Silly Pudge. 5.10 5.8. Didn't you take math classes?
    • 1 reply beneath your current threshold.
  • Math class (Score:3, Funny)

    by FattMattP (86246) on Friday July 19 2002, @11:47AM (#3917408) Homepage
    Silly Pudge. 5.10 is less than 5.8. Didn't you take math classes?
  • Regarding Perl Criticisms... (Score:5, Insightful)

    by Art_XIV (249990) on Friday July 19 2002, @11:47AM (#3917416) Journal

    First off, let me state that choice of programming language isn't a reflection of the abilities of a developer.

    I've seen dedicated, talented developers produce great apps with Perl, Python and even (gasp!) pre-.NET Visual Basic. On the other hand, I've seen careless, uninterested developers produce mounds of pure, unadulterated crap with C++.

    The language used has little to do with the quality of thefinal result, and has a lot more to do with the person coding with it.

    The language used for a product often isn't even up to the developer. Employers and clients mandate a language as often as not, sometimes for valid reasons, sometimes for moronic reasons ("The CEO plays golf with this dude who told him that using Java is gonna save big bucks").

    Let's look at three factors we can use when comparing languages: Performance, Development Effort Required, and Maintainability.

    C++ is a great language in experienced and knowing hands. When well-done its performance is good but it tends to be very effort-intensive.

    Perl and other very high-level languages are less effort-intensive, but they have a corresponding performance trade-off.

    Java and .NET languages are somewhere between the two, though they both seem closer to C++ on the scale than they are to VHL languages.

    The maintainability of a language seems weakly related to individual languages. Most of the maintainabilty qualities of a product will spring from the all-too-often overlooked Planning, Design, and Discipline of the developers that worked on it!

    I'll allow that Perl can really let you shoot yourself in the foot as far as maintainablity goes, but what languages aren't like this? Especially beloved C++?

  • by sinuhe (580161) on Friday July 19 2002, @02:07PM (#3918490) Homepage
    Binary incompatibility is beginning to be Perl's bane. Didn't FreeBSD remove perl from their base system because of this?
  • by Anonymous Coward on Friday July 19 2002, @04:39PM (#3919364)
    I am wondering if anyone else is getting problems with Perl sockets under Solaris 8, including under Perl 5.8.0.

    A while back sockets under perl 5.6.0 stopped working on all of our Sun Solaris 8 systems. I tried recompiling it, 5.6.1, and 5.8.0rc2 (I plan on trying perl 5.8.0 final soon), but all of them fail on the socket tests, which include:

    • lib/io_multihomed..Protocol not supported at lib/io_multihomed.t line 83.
    • lib/io_sock........Protocol not supported at lib/io_sock.t line 37.
    • lib/io_udp.........Protocol not supported at (maybe your system does not have a localhost at all, 0.0.1) at lib/io_udp.t line 60.
    (Note: We do have localhost defined in our host table).

    It was a while before we noticed the error so I do not know what could have changed on our system to cause this problem. The only thing I can think of it being is that we patch all our systems between the time it last worked and when it did not. I did note that one of our installed Solaris patches is 111327 which does replace the socket libraries. We recently got a new SunBlade 2000 Workstation and I tried it again on it, and it too has the problem. It came prepatched and includes 111327 amongst many others. I have yet to try taking that patch off (mostly because of the logistics involved in removing one of our active Sun off the network for the test, and I am not willing to take a security patch off our system with it on the network).

    This is not the same as noted in PerlFAQ 8, though I guess somebody at Sun could have deceided to change the Protocol numbers again, but I think it unlikely. I even went as far as modifying the test routines to add "use Sockets;", but no help.

    Also, where can one submit and view bugs reports for Perl?

    • 1 reply beneath your current threshold.
  • Re:Will it enforce readable code? (Score:5, Insightful)

    by spottedkangaroo (451692) on Friday July 19 2002, @08:34AM (#3916042) Homepage Journal
    good coders can write readable code in any language. bad coders cannot. So just what are you saying?
    [ Parent ]
  • Re:Will it enforce readable code? (Score:2, Interesting)

    by yatest5 (455123) on Friday July 19 2002, @08:36AM (#3916062) Homepage
    or at least make it easier to write readable code...

    The fundamental point of perl is its a quick way to write one-off scripts to do quick repetitive jobs - therefore maintainable code is not necessary. I accept there are other times when it needs to be readable tho...
    [ Parent ]
  • by ellem (147712) <ellem52@NOsPAm.gmail.com> on Friday July 19 2002, @08:58AM (#3916195) Homepage Journal
    Got FINK? There's the problem. You can try this it has worked for some.

    RESOLUTION:

    The following three commands will correct the above issue by removing
    the current Storable and replacing it with a recompiled version. These
    commands must be executed as the superuser. After these commands are
    executed the aforementioned issue will be resolved.

    mv /sw/lib/perl5/darwin/Storable.pm /tmp
    mv /sw/lib/perl5/darwin/auto/Storable /tmp
    fink rebuild storable-pm

    It IS first necessary to do the mv's, before the rebuild, since fink is
    a perl script that explicitly adds /sw/lib/perl5 to @INC, and exhibits
    the behavior mentioned above.

    You will need to execute the above commands for every XS module that
    is contained within /sw/lib/perl5.
    [ Parent ]
    • by Anonymous Coward on Friday July 19 2002, @09:09AM (#3916271)
      Hello,

      This is David Corbane the fink developer over at Apple.

      I just wanted to give this warning, since the post above seem to be a well constructed trolling.

      Fink is an apt-get (Debian) application for packagemanagement on Apple OS X platform. It works just like apt-get.

      The three lines given above would not solve any of the issues, rather this would launch your workpod into a highly unstable state, since perl is used extensively within OS X.

      Fink manages aplications outside the base installation of OS X and no third party package mangement should in any way bother with base OS X applications.

      If you try the above, you will not be able to run any sort of cron applications (which are run by default and most of which involve perl scripts).

      Also doing this removes some glue security bindings that are controlled by perl.

      Please be aware that fink is only used outside the base system of OS X and the first two lines of the code above are deceptive and highly dangerious.

      Please write me if you need any more info.

      dmcorbane@corp.NOSPAM.apple.com
      [ Parent ]
    • 1 reply beneath your current threshold.
  • Re:Yay! (Score:2, Informative)

    by davorg (249071) on Friday July 19 2002, @09:10AM (#3916274) Homepage
    This release actually came out a few days ago

    No. It was released today. You're thinking of the last Release Candidate which was released on Monday.

    [ Parent ]
  • by Anonymous Coward on Friday July 19 2002, @09:23AM (#3916343)
    My favorite quote on Perl:

    "A Perl script looks like an explosion in an ASCII factory"

    I know I saw it on /., but can't attribute it. Sorry.
    [ Parent ]
    • 1 reply beneath your current threshold.
  • by Fweeky (41046) <tom.hurst@clara.net> on Friday July 19 2002, @09:36AM (#3916464) Homepage
    I always find my eye searching for the ending delimiter at the end of each block of code; this basically means I'm forever having to stop myself from thinking the code is somehow incomplete when I read Python.

    I also found Python conciderably more opaque than Ruby, although I strongly suspect that had more to do with the documentation I found on it than anything else.

    That most of the examples of Python apps I looked at were pretty messy didn't really help either :)

    Unfortunately for Python, Ruby's filled my requirement for a clean dynamic language; I expect my next language to be more along the lines of SmallTalk or Lisp. Python just doesn't look that interesting anymore :)

    <eagarly awaits a flood of examples and docs that'll make me change my mind and fall in love with it>
    [ Parent ]
    • Try Erlang by axxackall (Score:2) Friday July 19 2002, @10:27AM
  • Re:Which is better? Perl or HTML? (Score:2, Informative)

    by Jeppe Salvesen (101622) on Friday July 19 2002, @09:51AM (#3916595)
    Which is better? Horses or cantelope melons?

    HTML and Perl are two completely different things. HTML is a way of representing (textual) data, while Perl is a way of processing and/or creating data.
    [ Parent ]
  • by PythonOrRuby (546749) on Friday July 19 2002, @09:55AM (#3916626)
    Parrot 0.0.7 was released last night. It contains a very rudimentary first Perl6 compiler, based on the Perl6 grammar by Sean O'Rourke, and Melvin Smith's IMCC intermediate language.
    [ Parent ]
  • Re:TROLL! (Score:1, Interesting)

    by Anonymous Coward on Friday July 19 2002, @10:17AM (#3916769)
    I agree. I'm a graduate student overseas at CERN. For my thesis, I'm working on prime number factoring sieve algorithms. I initially used "Fortran", but there were performance issues, so I switched to perl. It's much faster at matrix operations than the cobol libraries I was previously using, and since it's interpretted, I don't have to worry about long recompiles or syntax errors.

    TMTOWTDI!
    [ Parent ]
  • Re:Call me an idiot but.... (Score:1, Informative)

    by Anonymous Coward on Friday July 19 2002, @10:19AM (#3916778)
    Perl 6 is still reportedly about a year and a half away.

    There have been periodic postings on slashdot of design documents describing how perl 6 will function. This is probably what you rememebr seeing.
    [ Parent ]
  • by DG (989) on Friday July 19 2002, @10:38AM (#3916895) Homepage Journal
    The fact that Perl has a multitude of different syntaxes and structures available to do the same job - that hack on hack stuff you disparage - is a feature. It's one of the language's strongest suits. And it closely approximates a typical spoken language, like English.

    Where you see piled-on hacks, I see evolution at work. Perl is richly expressive, and allows you to code in whatever style works best for the task at hand, rather than trying to force the solution-space of the problem into the modeling-space of the language.

    That's why Java and other B&D languages suck so badly - they trade flexability for orthadoxy.

    But spoken languages have proven to be stubbornly resistant to the imposition of bondage and discipline in the name of "simplicity", and attempts at creating new, simpler spoken languages from scratch - like Esperanto - have failed miserably. The parallel with programming language should hold true as well. What is a programming language but a way of communicating with your computer, your users, and other programmers?

    It should be at least as expressive as your spoken tongue, not less.

    "A foolish consistancy is the hobgoblin of little minds" and nothing illustrates that point better than a discussion of Perl by those who don't actually use it.

    DG
    [ Parent ]
  • Re:Pseudohashes? (Score:2, Informative)

    by chromatic (9471) on Friday July 19 2002, @11:16AM (#3917170) Homepage

    Yes, pseudohashes are deprecated in Perl 5.8.0. They will be removed completely in Perl 5.10.0.

    [ Parent ]
  • by chromatic (9471) on Friday July 19 2002, @11:38AM (#3917340) Homepage

    Visual Basic compiles to C?

    [ Parent ]
  • Re:Will perl ever compile? (Score:3, Informative)

    by sabat (23293) on Friday July 19 2002, @12:15PM (#3917668) Journal

    Yes, it will -- starting with Perl 6.0. This is a complete rewrite that compiles to a bytecode called Parrot by default. You can compile Parrot bytecode into binary, or almost anything.
    [ Parent ]
  • Re:finally (Score:1)

    by sgtsanity (568914) on Friday July 19 2002, @01:17PM (#3918093)
    Heh, the programmers are the users, silly.
    [ Parent ]
  • Re:Unicode? (Score:1)

    by chromatic (9471) on Friday July 19 2002, @01:28PM (#3918176) Homepage

    Oh no, we wasted our time! Our boss, Mr. Anonymous Coward doesn't like what we did! He'll fire us for sure! Quick, porters, let's rip out all of the things we wanted to work on for our own projects, and let this brave, kind soul show us the way!

    Oh wait, you're talking about PERL [cpan.org] I work on Perl. My mistake, sorry.

    [ Parent ]
    • Re:Amusing by chromatic (Score:1) Saturday July 20 2002, @10:50AM
    • 1 reply beneath your current threshold.
  • Re:Pseudohashes? (Score:1)

    by BorgCopyeditor (590345) on Friday July 19 2002, @01:45PM (#3918305)
    There's a comment about pseudohashes being depreciated

    $depreciate = "decline in value";
    $deprecate = "recommend against using";
    if($deprecate != $depreciate) {print "Not the same word!\n";}

    :)
    BCE
    --Your punctuation skills are insufficient!

    [ Parent ]
    • 1 reply beneath your current threshold.
  • Re:finally (Score:2)

    by mindstrm (20013) on Friday July 19 2002, @05:58PM (#3919800)
    Yeah. Everyone knows that most programmers in the world use perl.

    Why do you need to urge others to do the same? use the right tool for the right job.. it's that simple.
    [ Parent ]
  • 28 replies beneath your current threshold.