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

 



Forgot your password?
typodupeerror
×
Perl Programming IT Technology

perl6 and Parrot 0.5.2 Released 229

mAriuZ writes "Bob Rogers just released Parrot 0.5.2. This monthly release includes a couple of interesting new features. First, we've bundled Patrick Michaud's Rakudo (thats the implementation of Perl 6 on Parrot) such that you can type make perl6 on Unixy platforms and make perl6.exe on Windows and get a working standalone Perl 6 binary. This is experimental and we hope to iron out some installation and deployment issues by next months release, but it was important to demonstrate our progress. The second new feature is a toolkit for starting your own compiler. Max Mohun built a prototype several months ago, and we've added a stripped-down version for now that builds the skeleton of a compiler for you using the Parrot Compiler Tools. I mentioned the LOLCODE compiler in What the Perl 6 and Parrot Hackers Did on Their Christmas Vacation; this is how Simon and Company were able to get LOLCODE up and running so quickly."
This discussion has been archived. No new comments can be posted.

perl6 and Parrot 0.5.2 Released

Comments Filter:
  • by 5E-0W2 ( 767094 ) on Monday January 21, 2008 @02:25AM (#22123804)
    This is not the release of Perl 6, this is merely another release on the branch that will one day become the perl6 release. The interesting change is that you can now build a proper binary version of perl.
  • Re:Perl 5 to Perl 6 (Score:5, Informative)

    by Killer Eye ( 3711 ) on Monday January 21, 2008 @02:27AM (#22123810)
    Switching may not be that bad, since they built in an incremental mechanism (the same mechanism that lets you put code from ANY two supported languages into the same source file). You could take your 99%-Perl-5 source and add a Perl 6 segment to it, and over time make it fully Perl 6.
  • Re:LOLWUT (Score:5, Informative)

    by Guy Harris ( 3803 ) <guy@alum.mit.edu> on Monday January 21, 2008 @02:40AM (#22123882)

    Offtopic? That is an example of LOLCODE [lolcode.com], and the article does note that there's an implementation of LOLCODE atop Parrot [lolcode.com].

  • Re:LOLWUT (Score:2, Informative)

    by kcbanner ( 929309 ) * on Monday January 21, 2008 @02:43AM (#22123894) Homepage Journal
    My remaining Karma thanks you :)
  • Re:About Parrot .. (Score:5, Informative)

    by Anonymous Coward on Monday January 21, 2008 @02:59AM (#22123962)
    Yeah, the idea is that you can write Python code that has access to all of CPAN, for instance. In fact, the whole Parrot theme came from an April Fool's joke referencing the Monty Python skit, saying that Perl and Python would converge into a language called Parrot. Thus, Perl and Python are Parrot's two canonical languages.

    Of course, you can also write a CGI script in Perl that can import some PHP library, for another example.

    This is much like Microsoft's DLR (Dynamic Language Runtime), which intends to make the world of .Net libraries available to dynamic languages, with Python, Ruby, and JavaScript as its headliners.

    dom
  • Re:BFD? (Score:5, Informative)

    by furry_marmot ( 515771 ) on Monday January 21, 2008 @03:15AM (#22124026) Homepage
    Uh...Slashdot just rewrote its interface and much of its code base a few months ago. Not exactly legacy.
  • by ImustDIE ( 689509 ) on Monday January 21, 2008 @03:32AM (#22124096)
    Very sorry for double posting, but I checked the wrong formatting box on the previous post.

    This post is a little misleading. Perl 6 is not done, this isn't a 'Perl 6 release'. It's just another Parrot release, with the neat feature that you can finally run a perl 6 binary instead of going through the parrot one. This, by itself, is nothing major. The main reason for this post is to publicize the great amount of progress Perl 6 and Parrot have made, particularly within the last few months. And by publicizing that, to hopefully get more people involved.

    If you're interested in running Perl 6 now, check out www.pugscode.org -- Audrey's compiler is still further along than the official 'Rakudo' one (although it shouldn't be for too much longer ;-). However, this is still great news to Perl fans. I'm not a contributor, but I do subscribe to the parrot mailing list; the fact that the real Perl 6 interpreter (although incomplete) is finally underway and making great progress, and the momentum that comes with that, is exciting.

    Even if you're not a Perl fan, the Parrot bits should still be quite interesting to anyone that enjoys language implementation. The PCT (Parrot Compiler Toolkit) is maturing nicely and many languages have working interpreters/compilers (to various levels of completion) using it. The amazing thing about it is the sheer speed that you can get a working language together. Rakudo is built on top of NQP (not-quite-perl6) -- a subset of perl 6 built in a matter of (a very few) weeks. And it's important to keep in mind that while Perl 6 is the star of the show for Parrot, Parrot is being designed to fit all dynamic languages; so don't be scared off because you think Parrot is too Perlish. I regularly see posts on the mailing list helping to make Parrot friendlier for other languages (particularly TCL) as people develop using parrot.

    For open source fans, I think Parrot is our best bet for a VM to give .NET a fight (although feel free to reply with other suggestions, I don't keep up with too many others ;-).
  • Re:About Parrot .. (Score:5, Informative)

    by egarland ( 120202 ) on Monday January 21, 2008 @03:39AM (#22124130)
    Yes.. but.. (from what I understand) unlike .net and java, you will be able to compile binary versions of your applications for distribution that don't rely on a giant, bloated, pre-installed runtime *and* they aren't compiled to bytecode at program launch. Also, the register based parrot engine underneath is supposed to be much faster than the purely stack based .net and java VMs.

    Binaries that launch and run at the speed of C with the ability to write in a high level language? Sounds like the future of programming to me.

    The big question I have is will multiple programs be able to share memory to store a commonly used library like C can. One of the things I think causes big inefficiencies in modern languages is the way they don't share memory well. If I have a C library that has, say, 5 megs of pure code in it and I'm running 10 copies of a program that uses it, all 10 can use the same 5 meg copy with only parts that are written to localized to the application. With high level languages, I need to use 50 megs of memory for each. Can Parrot share like C does and have all copies of the program reference the one copy stored in memory? Java and .net can't use this since their libraries aren't implemented on a level where that is possible. Parrot probably could but I'm not sure if it does. Does anyone know the answer to that?

  • Re:Perl 5 to Perl 6 (Score:4, Informative)

    by chromatic ( 9471 ) on Monday January 21, 2008 @03:54AM (#22124194) Homepage

    This is on a shoestring budget with less than twenty engineers (developers and QA).

    A shoestring budget with one full-time developer is still more than Perl 6 and Parrot have had.

  • by Evets ( 629327 ) * on Monday January 21, 2008 @04:25AM (#22124354) Homepage Journal
    I'm not sure why anybody is up in arms about a Perl6 release date. It takes a long time to get done. That's the way the world works. This isn't a platform with a fixed set of requirements, a predictable user base, and limited scalability requirements.

    People have been arguing for who knows how long about syntax. At some point the argument has to end and someone has to implement that syntax. It's not an easy thing to bring either of these points to conclusion.

    Parrot is register based, not stack based. Perl has been developed using Haskell, and eventually it will come to the point where perl can be compiled with itself. These are monumental tasks for volunteer workers pursuing some pretty hefty goals for the sake of pursuing them.

    Pugs [pugscode.org] has been working for quite some time already, and its an easy transition for anybody already familiar with perl.

    I can see criticizing the project because it's hard for a newbie to figure out how to help, or criticizing the syntax in favor of ruby/python/etc, or criticizing performance (although both Perl6 and Parrot perform very well IMO), but criticizing the time it has taken to build? Get off your high horse and go build your next big Web 2.0 script that can do anything as long as you have less than 100 daily visitors.
  • Re:LOLWUT (Score:4, Informative)

    by nitio ( 825314 ) <paulo@ruthes.gmail@com> on Monday January 21, 2008 @05:10AM (#22124546) Homepage
    MOD BOTH PARENTS UP!

    Wow, the first is an example of LOLCODE and is modded Offtopic and the second mentions that and it's modded Troll. Seriously, WHAT.THE.FUCK?
  • by mr_mischief ( 456295 ) on Monday January 21, 2008 @06:23AM (#22124818) Journal
    Crap... that first line should read '5.10.0' where it says '5.8.10'.

    s/8\.10/10.0/;
  • Re:Perl 5 to Perl 6 (Score:1, Informative)

    by Anonymous Coward on Monday January 21, 2008 @05:12PM (#22130650)

    foreach my $line (<STDIN>) {
        if ($line =~ /.*(\d+) users, load averages: (\d+\.\d+) (\d+\.\d+) (\d+\.\d+)/) {
            print("$1 are logged in\n");
        }
    }
    PS WTF is with the insane number of parentheses in your original Perl code? If I were feeling cynical I'd say you deliberately wrote it poorly just to make Perl look bad....

"When it comes to humility, I'm the greatest." -- Bullwinkle Moose

Working...