The Perl 6 Advent Calendar 160
An anonymous reader writes "Larry Wall wasn't joking when he said that Perl 6 would be ready by Christmas. Perhaps not this Christmas, but that hasn't stopped a group of people (including head Rakudo developers Patrick Michaud and Jonathan Worthington) from putting together an Advent Calendar, featuring one cool Perl 6 feature every day until Christmas. Topics currently covered include how to get and build Rakudo (the most actively developed and progressed implementation of Perl 6) and the new Metaoperators. For those wondering when Perl 6 will be finished: Rakudo will be having its official 'production release' (dubbed Rakudo Star) April 2010."
Word on the street... (Score:5, Funny)
... is Duke Nukem Forever is being rewritten in Perl 6.
If I had mod points... (Score:1, Offtopic)
I'm still chuckling... nice.
Re: (Score:1)
Re: (Score:1)
Coming of the (perl) Messiah (Score:2, Funny)
Re:Coming of the (perl) Messiah (Score:4, Insightful)
If you compare the Perl6 timeline to the Haskell timeline, you'll see that things aren't really going all that slowly. Building a good implementation of a complex programming language takes time.
Re: (Score:3, Funny)
yes, but you still haven't explained why perl 6 is taking so long
Re: (Score:2)
Re: (Score:2)
did they really bring it up off haskell? you think they would have
noticed something
Re: (Score:2)
But Python 3000 is already out, as Python 3.0, while Perl 6 is not. So Perl 6 is taking longer than even Python 3000. Besides, the real reason Guido changed jobs was because Google felt that python was so important to its operations that it could not risk letting development stall, so they made Guido a job offer, with his job being at least in part, developing python. (I have no idea how much work on Google specific stuff Guido does, but I imagine it is probably more than zero).
Re: (Score:3, Insightful)
But Python 3000 is already out, as Python 3.0, while Perl 6 is not.
Technically, Perl 6 is long time out: specification was out somewhere around 2005. Because the Perl6 isn't a software package (like Perl5), it is a language standard.
The other question is that there are no implementations of the standard yet...
And even then, Perl5 serves it's purpose so perfectly, that I personally atm see no real benefits to even toy with Perl6.
Re:Coming of the (perl) Messiah (Score:4, Informative)
'The other question is that there are no implementations of the standard yet...'
The Rakudo guys have now committed themselves to a useful/usable release (if not a complete implementation of everything in the standard) in Spring 2010 (the target is April):
http://use.perl.org/~pmichaud/journal/39411 [perl.org]
They intend this to be a release which 'application writers will feel comfortable enough to start using in their projects'.
This probably helped:
http://news.perlfoundation.org/2008/05/tpf_receives_large_donation_in.html [perlfoundation.org]
Here's where they are now:
http://rakudo.org/status [rakudo.org]
http://github.com/rakudo/rakudo/blob/master/docs/ROADMAP [github.com]
Re: (Score:2)
No argument from me. Perl 6 is a big project. I was just correcting the implication that Python 3000 has been as long time in coming as Perl 6, since it is already here.
PERL went the way of the dodo... (Score:1, Funny)
...it's too late for PERL. The system and kernel engineers chose to stick with C, PHP ran all over it with less cryptic syntax, and all the web 2.0 "me too" morons are now hacking away in Ruby and Python.
But really, PERL's demise was PHP. Especially since the CLI version of PHP, turning him into a true general purpose language.
Re: (Score:2)
Sorry, PHP is still an archaic, over keyworded language. Surefire way to find out if a company doesn't know what they're doing: they use PHP at the command line.
Re: (Score:2)
Surefire way to find out if a company doesn't know what they're doing: they use PHP at the command line.
Unless they have business logic libraries written in PHP, and they want to make sure that the libraries used by the public web site and those used by internal command-line tools have the same behavior. Or to what representation should a library written in PHP be compiled before using it in a command-line program?
Re: (Score:2)
Not PHP.
Re: (Score:1)
Re: (Score:1)
Re: (Score:1, Flamebait)
Re: (Score:1)
...it's too late for PERL. The system and kernel engineers chose to stick with C, PHP ran all over it with less cryptic syntax, and all the web 2.0 "me too" morons are now hacking away in Ruby and Python.
But really, PERL's demise was PHP. Especially since the CLI version of PHP, turning him into a true general purpose language.
Dude, you lost me at PHP.
Perl IS the most widely spread scripting system on a Unix host, after Shell.
This has taken too long (Score:3)
---
Perl Programming [feeddistiller.com] Feed Feed Distiller [feeddistiller.com]
Re:This has taken too long (Score:5, Informative)
I'd worry more about the continuing relevance of Perl in a niche which has come to be dominated more and more by PHP (eww!) and Ruby in recent years. It's not going away, certainly, but its relevance to the future of computing may be somewhat limited despite its technical merit.
Re: (Score:3, Interesting)
It's not going away, certainly, but its relevance to the future of computing may be somewhat limited despite its technical merit.
That's silly. Programming languages always were and will always be transient.
Compare Perl1 to Perl5 (that actually easy since change logs are delivered with every Perl version) and see how language have changed over the time. Like-wise PHP or even C.
Languages evolve along with tasks they are used to solve. Sometimes obviously a branch of evolution falls off and language becomes a thing of past. And that can happen to any language, because we still can't predict with certainty problems of tomorrow.
Re: (Score:1)
Right. That's why no-one uses LISP any more. http://people.mandriva.com/~prigaux/language-study/diagram-light.png
Oh, wait...
Re: (Score:3, Insightful)
perl and nice don't belong together, especially if you bring CPAN into the sentence.
When I have some retarded task that has to be done, like taking a web form and inserting the data into a PDF that has to be emailed to a few different people, or retrieving some data via FTP, verifying that it is valid and then updating some excel worksheets and emailing the new plots around as in-line images in an html formatted email, PERL can do it.
maybe PHP, ruby and python can talk to open office, ms office, do SMTP wit
Re: (Score:1, Flamebait)
Python can do all that.
Re: (Score:3, Funny)
Maybe glue is perl's niche?
I'm sure there is a "turning camels into glue" joke in there somewhere.
-l
Re:This has taken too long (Score:5, Funny)
More than that--- Perl 6 was announced [perl.com] 9 1/2 years ago! Even O'Reilly's Perl 6 Essentials [amazon.com] is now 6 1/2 years old, and some Perl 6 books are into 2nd editions.
Re:This has taken too long (Score:5, Informative)
Perl 6 is a new language, not just an upgrade. Perl 5 has not been neglected, and continues to receive updates and new features (some of them originally developed for Perl 6). The plan is to continue Perl 5 support and development indefinitely, irrespective of the status of Perl 6. And of course Perl 5 has its own advent calendar, which this year focuses on interesting stuff you can do with various CPAN modules:
http://www.perladvent.org/2009/ [perladvent.org]
Re: (Score:2)
Then they should have chosen a new name than use the same name as an established language. By not doing so they have created confusion leading to people thinking, rightly so, that this is somehow an upgrade to the older Perl.
Re:This has taken too long (Score:5, Interesting)
Well, the first line of the first Google hit for 'Perl 6':
http://dev.perl.org/perl6/ [perl.org]
says:
"Perl 6 is a new language. Perl 5 and Perl 6 are two languages in the Perl family, but of different lineages. There is no current release schedule for Perl 6."
Some people, of course, may still find this confusing. These people should use Python :-)
A longer answer (together with several chapters of new Perl 6 book written by some of the developers) is here:
http://cloud.github.com/downloads/perl6/book/book-2009-11.pdf [github.com]
"Some might ask, 'Why call it Perl if it's a different language?' Perl is more than just the vagaries of syntax. Perl is philosophy (there's more than one way to do it; easy things easy, hard things possible); Perl is custom (unit testing); Perl is architectual edifice (Comprehensive Perl Archive Network); Perl is community (perl5porters, perl6-language). These are things that both Perl 5 and Perl 6 will share to varying degrees. Also, due to Perl's habit of stealing good ideas, Perl 5 and Perl 6 will converge in some areas as Perl 5 borrows ideas from Perl 6 and vice versa."
Re: (Score:2)
"Perl is more than just the vagaries of syntax. Perl is philosophy; Perl is custom; Perl is architectual edifice; Perl is community."
And Perl6 is a jump over the shark.
I've seen snippets of Perl6 and it does indeed look rather different from previous versions of Perl. Does it stand a good a chance of running lots of existing perl scripts without nasty interop goop? If not, it's really another language and should not hang off Perl's coattails. Call it "Rakudo" instead (after all, that name's used right now) and let it find its own way in the world of languages. If instead they'd stuck to being, say, 95% compatible with existing perl scrip
Re: (Score:2, Informative)
Re: (Score:2)
Re: (Score:2, Informative)
use v6;
# Perl 6 goes here
{
use P5;
# Hey, now I'm writing Perl 5 code!
}
# I'm writing Perl 6 again!
The amazing thing is that the object models will be able to interact, which means that CPAN modules will be trivially usable. That's a different kin
Re: (Score:2)
In addition to what wayland++ said, there's also the fact that the Perl 6 implementation on Parrot, called Rakudo, is intended to be able to mix programming languages with great ease. For example, one syntax that's been bandied about is this: use v6; # Perl 6 goes here { use P5; # Hey, now I'm writing Perl 5 code! } # I'm writing Perl 6 again!
You're seriously calling this a good thing? The ability to fairly easily switch to a very similar but different language in the middle of your code? That sounds like an excellent way to create a maintenance and troubleshooting nightmare.
Re: (Score:3, Informative)
"Perl is more than just the vagaries of syntax. Perl is philosophy; Perl is custom; Perl is architectual edifice; Perl is community."
And Perl6 is a jump over the shark.
That's meaningless. You could say that about any new technology (I'm sure someone said it about the DVD).
I've seen snippets of Perl6 and it does indeed look rather different from previous versions of Perl.
In some ways yes, and in some ways, no. Perl 4 looked like this:
require "foo.pl";
local($foo);
$foo = 10;
Perl 5 looked like this:
package Foo;
my $foo = 10;
Perl 6 looks like this:
module Foo;
my $foo = 10;
You tell me which was a larger leap.
Perl 6 is, conceptually, a massive shift and arguably a language of its own. But in terms of raw syntax and ease-of-learning for current Perl 5 users, it's not as large a c
Re: (Score:2)
Re: (Score:1)
Not at all. Perl6 is not an upgrade of Perl5, which is still being actively developed. Perl6 is a brand new language in the same family.
Then why name it Perl6?
If it's a different language, give it a different name!
Re: (Score:3, Insightful)
Is it just my memory, or is this over five years on one upgrade.
Perl 6 is not an upgrade to Perl 5.
This is something that many folks misunderstand, and frankly, it's a failure of the Perl development team to correctly communicate (an open source project with poor PR skills... shocking). Perl 6 isn't a new language either, though you'll find many who will say that it is (even within the project, where it's a sort of shorthand way of interrupting the long conversation that ensues if you don't call it a new language).
What Perl 6 is is the logical progression of Perl into t
Re: (Score:2, Informative)
I'm going to release the 24th stable monthly version of Rakudo Perl 6 in a couple of weeks. How many more releases do we have to release to meet that mythical bar of "shipping"?
Re: (Score:2, Informative)
Fedora 12 includes Rakudo Perl 6 [fedoraproject.org].
For comparison, Fedora 13 will likely include Python 3 [redhat.com].
still relevant? (Score:4, Insightful)
from an outsider's view (I have NO perl experience, and i intend to die like that if at all possible) it seems like perl has slowly moved from an ubiquitous scripting language to a fringe research project over the last few years. it reminds me somewhat of the pascal/modula-2/oberon phenomenon. do perl afficionados think that this new version will enjoy the success that its predecessors have had?
Re:still relevant? (Score:4, Interesting)
Maybe Perl is more for a systems administration language (it started out that way) than a software development language, but that's what I need, and that's why I like it. Perl combines the features of awk, sed and shell scripting with those of other languages as well, wraps them up in a C-like syntax, but removes all the hard syntactic bits of C that make it harder for processing strings, or just generally cumbersome.
For me, Perl 5 is perfect. It's pretty much the language that I would have designed if I designed programming languages -- it i well suited to the tasks I do, the problems I tackle, and is expressive in the same way that I think about writing code. That said, I don't give a flying fuck about Perl 6 at all and really have no interest in it at all.
Re: (Score:1)
Re: (Score:2)
Re:still relevant? (Score:5, Interesting)
Yes, Perl is still relevant to a number of software developers and systems administrators.
It is an ideal language for software developers who want to use metaprogramming techniques (code generation; domain specific languages), text processing or data conversion, or automation of software development process. Perl 6 will have a full grammar engine (for parsing - like having YACC/BISON built in) which will make text processing even easier than before. The use of a scripting language for these tasks leaves the source code more accessible than compiled languages, which is an advantage to software developers who can adapt the code more readily than a compiled project.
Whether Perl 6 will be used much for primary software development I don't know. My day job is C programming for embedded systems where Perl is not suitable. Desktop programming is more likely to be in C++ or C# where the standard libraries are huge and the software development ecosystem is more developed.
The primary audience for new Perl, in my opinion, is expert software developers who need a powerful/succinct language to implement solutions to problems in the manner they think. Perl 6 therefore supports just about every programming paradigm known to mankind. What makes Perl great for software gurus is what makes it an awful language for programming newbies.
I will be learning Perl 6, not because I will use it much, but because I will discover new ways to think about problems. Oh, and it'll be fun.
Jonathan Paton
The opposite is true (Score:2, Insightful)
My experience is that people who do not like Perl are generally weak in computer science. Perl internal is more similar to lisp than to shell. For example, closures are very effective in Perl.
All the elegance of Perl need a good level of computer science to be fully understood.
The sysadmins I have met that had weak background in computer science hated Perl and were very proud of their shell hacks.
For me, the smart sysadmins solve
Perl is Elegant (Score:5, Interesting)
Perl is one of those languages that most people meet in passing because someone else has hacked up a script to get something out of some file. Which is sad, because understanding what makes Perl different from other languages and why it is often a better choice for wrangling data isn't going to be obvious in one lousy foreach search-and-replace hack. And most people exposed to perl scripts in this manner fall over on the difference between scalar and list context and never discover why perl expressions like $lookup{$term}++ will save them years of work, while making their analysis scripts go faster.
I write Perl modules day in, day out to cope with processing DB2 internals in an attempt to model and improve them. Object-oriented Perl makes this easy, fast and effective. Closures (which I'm sure aren't understood by 90% of the Slashdot community) back this up being able to create anonymous subroutines with data attached which can be processed later. Perl is also effective for parallel task analysis - I have modules for jobserving many tasks across multiple machines and Perl threads make it easy to fire a task off while something else is done.
Perl is an essential part of data analysis for any serious volume of unstructured data. However, I'm not unhappy that it is little understood. Perl makes in the impossible merely hard. If everyone knew how to leverage Perl, I wouldn't have so much fun.
Cheers,
Toby Haynes
Re: (Score:1)
> language to a fringe research project over the last few years
Perl is not an ubiquitous scripting language.
Perl is *the* ubiquitous scripting language. That hasn't really changed. There are a number of other scripting languages, some of them newer than Perl and being used more and more (notably, Ruby), and some of them older than Perl and being used less and less (notably sh), but what hasn't changed in the last fifteen years is that
Re: (Score:2)
do perl afficionados think that this new version will enjoy the success that its predecessors have had?
Why should I care?
I use Perl5 because it is perfect fit for what it is. If Perl6 would catch might attention, I might consider trying it too.
Perl isn't about gathering design awards or topping charts. It's a robust tool for an array of *NIX related tasks. And not only.
Relevance vs Effectiveness (Score:2)
the pascal/modula-2/oberon phenomenon
Funny, that's what a lot of people who liked modula-2 and oberon have said about the recently released Go.
do perl afficionados think that this new version will enjoy the success that its predecessors have had?
Do you mean popularity or success?
Popularity is related to its success, since a bigger community can provide a significant boost to a language, both in terms of library development and in terms of perceived viability as part of a commercial product.
But widespread us
perl 5 versus ruby versus perl 6 (Score:5, Interesting)
I do most of my coding in perl 5. Perl 5's implementation is rock-solid, and CPAN has an absolutely fantastic selection of useful modules for perl 5.
If I was going to change to something other than perl 5, I would need some motivation. The clearest motivation I can see is that OOP in perl 5 is ugly and bolted on.
With that motivation, I have dabbled in ruby enough to write one nontrivial app. The thing is, perl 5 still beats the heck out of ruby in terms of implementation and libraries. As an example of this, in my ruby app I wanted to use some regex features that were not available in ruby 1.8, so I ended up using ruby 1.9. But ruby 1.9, and its regex engine, are relatively raw and buggy, and I ended up having serious problems that I had to work around. (Yes, I submitted a bug report. No, it hasn't been fixed yet.)
AFAICT, the main advantage of perl 6 over perl 5 is the same as ruby's main advantage over perl 5: OOP is implemented in a nicer way. The thing is, the disadvantages are even more magnified, because it's so raw and incomplete.
My current reaction to the situation is to plan on continuing to code in perl 5 until, say, 2015, and then check back to see how much ruby and perl 6 have improved by then.
Re: (Score:2)
The clearest motivation I can see is that OOP in perl 5 is ugly and bolted on. With that motivation, I have dabbled in ruby enough to write one nontrivial app. The thing is, perl 5 still beats the heck out of ruby in terms of implementation and libraries.
Trying out Python never occurred to you?
Re: (Score:2, Insightful)
Why would anyone want to use a glorified VB clone? I am sick and tired of seeing 'rock-star' Python and Ruby programmers trying to shove the new shiny toy in everyone's face. People have been using Perl for 20+ years, and they'll still be using it for 20+ years after Ruby and Python are a distant memory.
Re: (Score:2)
Re: (Score:2)
I will say he was overly dismissive of python and ruby, but there is a kernel of truth there. Beware of any language that is a current fad. No matter how good it is, it will be advocated and tried to be used even in places where it doesn't make sense. "Ruby on Rails" did that to ruby for a time (not sure about now) and Python is still very much in the fad stage where a recommendation should be noted, but taken with a grain of salt. I'm not saying this doesn't happen for languages that aren't "hip" (for
Re: (Score:2)
In response to your first point - my thing is, how do you ever know when something stops being a fad? Was using 'C' a fad right when UNIX came out? Maybe it was, but it definitely isn't now, so when did it change. Was Java a fad when it first came out? Is it now? For those of who say yes and yes, what makes it so - a *huge* number of people use it to great success. Same goes for Ruby and Python.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Why would anyone want to use a glorified VB clone? I am sick and tired of seeing 'rock-star' Python and Ruby programmers trying to shove the new shiny toy in everyone's face. People have been using Perl for 20+ years, and they'll still be using it for 20+ years after Ruby and Python are a distant memory.
The GP mentioned trying Ruby (and as such is not afraid of shiny toys) and disliking it because of bad implementation. In that light, Python would have been a great match.
Please don't drag down Python in the "rockstar programmer" mire, it's a time-honed language that is being used for serious (non-web 2.0) stuff all the time. We all got beards, even.
Re:perl 5 versus ruby versus perl 6 (Score:5, Insightful)
How old do you think Python is? Look it up ... ... ...
It's 18 years old. In fact, it's only 4 years younger than Python.
I suppose you think Google, CERN, and NASA are stupid to be "using a glorified VB clone"?
Maybe it is you that is wrong.
Re: (Score:3, Funny)
How old do you think Python is? Look it up ... ... ...
It's 18 years old. In fact, it's only 4 years younger than Python.
I take it then that it is some sort of 4-dimensional Oroboros?
Re:perl 5 versus ruby versus perl 6 (Score:5, Funny)
Why would anyone want to use a glorified VB clone? I am sick and tired of seeing 'rock-star' Python and Ruby programmers trying to shove the new shiny toy in everyone's face. People have been using Perl for 20+ years, and they'll still be using it for 20+ years after Ruby and Python are a distant memory.
Why would anyone want to use a glorified Unix Shell? I am sick and tired of seeing 'rock-star' Perl programmers trying to shove the new shiny toy in everyone's face. People have been using Lisp for 50+ years, and they'll still be using it for 50+ years after Perl is a distant memory.
Now get off my lawn.
Re: (Score:1)
The thing that makes me suspicious about Python is that the people who are trumpeting it's greatness are by and large the people who were so keen on Lisp. To some extent perhaps they're just learning the error of their ways, but still. It doesn't look right.
Re: (Score:1, Interesting)
For example, when object-oriented programming became a new and exciting thing, Lisp programmers immediately started making their own object system. To do this, they did not need to change the language in any way, they could simply create it within the langu
Re:perl 5 versus ruby versus perl 6 (Score:5, Funny)
(problem (((car 'some-apostrophe-shit) lisp (with #letrec foo * (lambda x) (x unmaintainable +))) parentheses (nobody-can-read-this-crap !) (worse-than (cons perl))) (interesting-cs-teaching-language cdr (though))))))))))))))))
Re: (Score:2)
Exactly.
If you're coding Lisp in Emacs, it wull automagically indent your code to the Proper Place, and that makes the parentheses much MUCH easier to follow. I wish that other editors (UltraEdit, Notepad++, some IDEs) supported Lisp as well as Emacs does, even if it were only syntax highlighting and auto-indentation. I'm addicted to that, now. I even like it in other languages. (Even if I haven't figured out how to get Emacs to indent my Perl or Java code the way I'd like it to be, it at least is consist
Re: (Score:1)
Re: (Score:1)
That was Guy Steele, talking about C++ programmers.
Re: (Score:2)
I like python OK. I've used it as a teaching language. I haven't written much nontrivial code of my own in python. The impression I get is that since it's younger than perl, its implementation isn't quite as solid, and its libraries aren't quite as complete. As a language matures, the rate at which old code breaks decreases; I think perl is futher along than python in that regard. For some of the applications I'm interested in, like CGI apps, perl seems to have bett
Re: (Score:2)
The impression I get is that since it's younger than perl, its implementation isn't quite as solid, and its libraries aren't quite as complete. As a language matures, the rate at which old code breaks decreases; I think perl is futher along than python in that regard.
It is, but that's not a function of age, it's a function of adoption. Because Python was around for longer than Perl was before its adoption took off, the fact that they're of comparable age isn't as interesting as their timelines.
That said, Python has its own problems. It's been built on a foundation of axiomatic correctness in a realm that has no absolutes, and thus often finds itself having to compromise in difficult ways (ternary operator that isn't quite a postfix conditional even though those are evil
Re: (Score:2)
Re: (Score:2)
Re: (Score:1, Interesting)
Uhm, go to http://search.cpan.org/ and find anything you want. With a demonstration in the synopsis, and everything is installable with a robust command line tool that (sometimes is too) verbosely states any problems. It also has built-in error reporting on test failures, so you can interact with module authors very easily.
I can't respond to Ruby in any way that isn't flamebait. I really, really hate gems -- when it works, it works great. When it fails, I can never figure it out. I will leave it as tha
Re: (Score:1)
I've been a long time Perl 5 developer, and have been doing a lot of Ruby since RoR was in beta. I haven't had a lot of issues with Ruby, to be honest. Most of the important CPAN modules have been ported to RubyGems and most of the serious Ruby bugs have been fixed.
Some things which make Ruby great: It's a very nice OO language. Rails is basically the standard web framework used (Perl 5 has many to choose from, so inheriting a Perl web project can be a pita).
Some things which make Ruby not so great: It's
Re: (Score:2)
Don't see any difference in the requirement of mod_rails/etc. versus mod_perl/mod_php/fcgi for those languages. Impossible to argue about start-up time and performance in general, although I think Ruby is working more on that problem than nearly anyone right now (1.9/JRuby/Rubinious/etc.)
The community doesn't seem hugely different than others I have been part of (not many), but of course I'm somewhat of a n00b myself
Re: (Score:2)
Interesting question. Okay, here's the list of all the CPAN modules that I routinely install on a system I'm going to use: CDDB_get, Term::ReadLine, Term::ReadLine::Gnu, Term::ANSIColor, Term::ReadKey, Curses, Mail::Sort, Net::DNS, Net::DNS::Resolver, Mail::Address, Mail::RFC822::Address, Mail::Sendmail, Digest::SHA1, Data::Dumper, XML::Parser, XML::Simple, Data::Dumper, Time::HiRes, RTF::Tokenizer, RTF::TEXT:
Re: (Score:2)
Re: (Score:1)
CPAN's user interface is definitely very 1994 :-) Perl programmers seem to accept it, but it seems pretty silly to me the way it makes you hit enter 37 times to accept all the defaults.
Re: (Score:2, Interesting)
Re: (Score:2)
If I was going to change to something other than perl 5, I would need some motivation. The clearest motivation I can see is that OOP in perl 5 is ugly and bolted on.
How about multithreading then? It's not only ugly and bolted on, it incurs so much overhead that it's basically useless wherever performance matters at all. I use Gearman now (rationale: might as well take something with the ability to use multiple systems / load balance / redundancy if you are taking such a performance hit), but it would be so much better if we could just have acceptable multithreading like a bunch of other languages (Java family incl. Scala, C/C++ if you are a masochist etc.).
Re: (Score:2)
I've been working with Perl 5 as my primary development language for about 10 years, and while I love what Perl does well, what Perl doesn't do well (particularly objects and error handling) SUCKS.
I've recently had the very surprising pleasure of doing a new project in PHP. Now, if you haven't used PHP lately, you would probably be moaning to some degree like I did, but you know what? PHP 5.3 has grown into a real language. Yes, there is still some library inconsistency and cruft, but it has most of the fea
Re: (Score:2)
Define "real objects" (in the context of object-oriented programming). (Hint: if you say anything other than "collections of bits in a computer" you're a deluded fool, there's nothing that makes PHP or Python's objects any more "real" than Perl's.)
A "real object" has a language syntax that is comprehensible, maintainable, and well-defined. Not to mention a syntax that I can use on a casual, daily basis without having to copy some other working code and/or consulting the manual.
(Hint: You're a dumb-ass. Th
Still not APL (Score:1, Flamebait)
It looks like they are attempting to reinvent APL. (with the addition of regex operations).
I can imagine a single line of code will now require 10 to 100 lines of comments to describe the iterations and references going on.
Re: (Score:1, Interesting)
Actually, it's because he correctly assumes that it's easy for two different perl programmers to use different styles and subsets of the language. Perl makes it easy to write code that's hard to understand unless you're the original author (a similar thing can happen with C++), and when that happens you'd better hope the documentation is ok.
Evil number (Score:2)
the "by xmas" curse (Score:1)
Perl Advent calendars... (Score:2, Informative)
A Perl Monks poster has collected the address of 5 different Perl(-related) advent calendars:
http://www.perlmonks.org/?node_id=810472 [perlmonks.org]
As he says, a "great tradition".
What is Perl 6 anyway? (Score:1)
I still haven't figured it out yet, so let me take this chance.
Can someone help me clarify: am I right about this?
- Perl 6 is the successor to Perl 5, it will not exist as an implementation but as a specification. That specification is finished and definitive. It is owned by Larry Wall and small circle of his friends. They want everyone to implement interpreters for Perl 6;
- An official test suite for Perl 6 exists and it is complete. Anything passing this test suite IS Perl 6. The test suite is stored with
Re: (Score:1)
oops.. I meant 2010, not 2006.
Rakudo Star not a production release (Score:2)
Rakudo Star is not a production release. In the linked blog pmichaud says he would like to stay away from words like "finished" or "stable" and calls Rakudo Star a "useful" and "usable" release. The "Star" itself means literal *, or "whatever", to get away from commiting versioning or release engineering terms. The release will be simply something you can hack on without major inconveniences.
Re: (Score:2)
Clearly we are not using the same definition of a "production" release. In my vocabulary, production release is a stable release that most businesses except maybe nuclear powerplants can rely on. A release that was thoroughly tested for data-loss bugs, will not break things with another update, has some bugfix schedule and so on. I know you find this definition overly restrictive, but you can't simply "squat" a word with a meaning different from the mainstream. (Or you will create more problems than you sol
Non-Obligatory plug (Score:3, Informative)
To test out Perl 6 in an IDE environment, try Padre.
http://padre.perlide.org/download.html [perlide.org]
NOTE 1: Install the 'Padre Standalone Plus Six' package, not the 'Padre Standalone' package)
NOTE 2: If you install it on windows, ensure you have a few hundred MB to spare on c:\ -- the drive targeting for the Install MSI does not work properly yet.
No, Dont Bother (Score:3, Insightful)
Facile discussion of languages on
Re: (Score:1)
Re: (Score:3, Informative)
We've released a new version of Rakudo Perl 6 every month since December 2007. That's 24 months in a row.