perl6 and Parrot 0.5.2 Released
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."
Yeah, or you could choose a factor that's not completely irrelevant when you're looking for the next language to learn.
Nice troll. As a free-software supporting atheist, I can't think of a much more obnoxious mockery of those ideals than your post.
-- The act of censorship is always worse than whatever is being censored. Always.
because we aspire to be better than those we disagree with
Actually, evolution developed the camel and the horse for different environments, but that is not really the issue.
PERL6, like those before it, is just a tool. It will either work or not. Some don't like PERL because it can be messy and perhaps unstructured. I submit to you that some coders can make a mess of any language. PERL has its advantages, and like everything else, its disadvantages.
I too will use PERL6, no matter what name it is given. I find PERL is quite useful, and I presume that many others do also as it still seems to be relevant to all but the prophets of the latest Web2.0 gizzmo language thingies.
In any case, a hammer is a hammer, and when you have to drive some nails... well, damnit, use a hammer.
Support NYCountryLawyer RIAA vs People
This is probably just flame bait, but here's your answer.
Python is overly simplistic, making it difficult to do certain types of interesting programming.
This is by design, Python is meant to be dumbed down (in the sense that Java is) and have a clean small footprint.
Ruby is slow, even by scripting language standards (in the main implementation, anyways).
This is by design (well ok, not really), but Ruby needs to support all those gorgeous abstraction layers somehow.
Both of them aren't that amazing when it comes to Unicode (like Perl or Java), don't have built in security-hardened modes (like Perl's tainting or PHP's weird data firewall thingy, etc), aren't as portable as they might be (like EBCDIC, VMS, S390 and other places that aren't Unix or Windows) and their package repositories lack sophistication and the ability to properly nest dependencies in a cross-platform way (like Perl, Fortran, R and Erlang).
So by all means, if you have simple programming needs on lowest-common-denominator environments doing ordinary things and you don't stretch far beyond the core libraries, by all means go with a language that fits your brain the best, be it Perl, Python, Ruby, Brainfuck, whatever.
If you want to integrate with C code inside the rendering pipeline of a movie render farm while having code so boring anyone can maintain it, use Python.
I'm still not sure of anywhere that Ruby is a standout success... Rails has jumped the shark and is in decline, and I'm not aware of any major use cases...
Perl is still a brilliant language to get the simple things done really really fast but tieing together half a dozen CPAN modules, while still having the ability to scale your code base up a hell of a long way, and the knowledge that it's fairly easy to write highly portable code.
I use Test::More and other Perl test automation tools extensively at work. I recently wanted to make a web front end for the testing reports. I already had test results parsers written as Perl modules for the command line test analyzers, so I just used Perl to make the test report pages with CGI.
It's not always the right choice, but it can still be very useful.
https://www.facebook.com/digitizeicm -- Show your support for the digitization of the Iron County Miner newspaper archiv
"...while having code so boring anyone can maintain it..."
I hope that I understand that wrong and that you don't consider unintelligible, unmaintainable, code 'interesting' in a good sense.
Because my mama taught me to comb my hair, keep my fingernails clean and write code that other humans can understand without wanting to couge their eyes out with a fork.
Six years later and it is still in the experimental stage.
In those six years, my former company built and twice re-engineered a forex trading platform written in Java. We went from four machines to over hundred. This is on a shoestring budget with less than twenty engineers (developers and QA). We developed integration components to FIX, SWIFT, and custom projects to banks.
How many VMs are there to use as reference? The list is long. This is not rocket science. Perl6 is a joke in the same vain as Duke Nukem Forever. Perl was fine up to version 4. It did its job well, as a textual parser. Beyond that, it took on too much and now is sagging under its own weight.
A good rule of thumb for your programming language rewrite is, get it done before you lose programmers who jump ship for: a) something 'cooler' b) something better There are lots of things out there now that have one or both of those qualities. Perl just has awesome advocacy and marketing at this point probably only because it's the tradition to treat Perl with respect as it made unix programming easy for newbie Linux people. Times have changed. There are other better options. It took too long.
That's definitely a goal. I think we'll need to make at least one change to the garbage collector such that we don't trigger copy-on-write for shared memory pages of internal data structures and dirty pages unnecessarily, but I think it's possible to fix that without too much trouble.
how to invest, a novice's guide
Working lambdas (especially closures), for one.
How ironic that you praise Scheme's design in this context. The ambiguous parsing of vertical whitespace leads directly to the broken lambda problem. Now that's probably fine for a teaching language, but plenty of people seem to think that Python is a language that scales up for experts. If that's the case, perhaps it's appropriate to judge the design of Python in terms of how it supports important features on which to build larger and more elegant abstractions.
how to invest, a novice's guide
> 2. Did it take too long?
> Perl 6 received a fair amount of hype when the project began. With no realistic timetable
> publicly announced, it seems that people forgot or gave up on it. In fact, in that time
> Python has become very popular; I wonder if it has taken some of the 'market share' that
> would have otherwise gone to Perl 6.
I tend to think Perl 6 as a completely new language, rather than a new version of an old language. If you have even the concatenation operation changed from "." to "_", and if array indexing that you had written as "$arr[$i]$" now must look like "@arr[$i]" instead, and if you'd lose RAII on the way because garbage collection is now no longer at predictable time, it mean all programs will have to be significantly modified or at least converted. This is not exactly what I'd expect from a new version.
As a new language, it emerge probably slower than what most of us hope, but is probably not as slow as most of us perceived. After all, Perl 6 is a very ambitious language that have all features of Perl 5 and quite a bit more, and it has a completely new low-level engine as well. That slowness is probably due to the lack of any people dedicated to its implementation until very recently.
By the way, Python is not new. The first version of Python is released in approximately the same time as the first version of Perl. Python is first conceived in the 80's, first implementation started being written late 1989, completed 1991, and did not gain general acceptance until 2000. FYI, Perl 6 is conceived in 2000, Pugs starts to be implemented in early 2005, although it is still quite rudimentary.
This is insightful? Since when is opinion stated as fact insightful?
OK--here goes:
Perl has to many shifted numbers as part of is syntax.
English words are too hard to spell.
Lisp is backwards and all of the parentheses make it hard to read.
Python is named after a snake making it a stupid name.
Python is named after a comedy troupe making it a stupid name.
C would be good except that it takes to long to make anything work.
Python makes me indent which makes me feel like a little kid.
Indent is not mandatory in most languages.
Fortran makes you start in a set number of columns from left and the lack of case sensitivity makes it seem to simplistic for anything worthwhile.
Objective C replaces periods with closed brackets making you type too much.
Put any of these languages on a server farm and milk a cow.
I'm a pony.
Basic is the best language because I've never bothered to learn anything else. It can scale up and you can write libraries to get almost anything done you want. Its easy to program in. I don't use goto that much.
Just callin' it like I see it.
Yes, in meantime, Python has gained ground - as has Ruby.
But I think there's one thing that's easy to forget - Perl6 has also been losing ground to Perl5. People need to get their jobs done; if you need Yet Another Hack Built Around An Awesome CPAN Module to keep stuff working, you really have no choice but to write it in Perl5. People have jobs to do.
Before the P6 hype, I used to write stuff in Perl, after hype, I was like "Ooh, it will really rule one day," and now I also write a lot of stuff in Ruby, which has all of the stuff that Perl really needs, such as a sane OO syntax. I really hope Perl6 will be a success and I look forward to writing stuff in it. When it's released. I just have to rely on the tools that we have at hand...
That's not really very helpful. I still feel like an expat perl programmer but I have rails/nginx sites that see over 100,000 people a day without any difficulty. They're clustered over four servers, none of which peaks at more than a half of its capacity. Five years ago I was running similarly busy sites under mod_perl and apache 1.3.x. The architecture was more powerful but less robust. I could do much all sorts of interesting things with the apache lifecycle - rails feels like lego by comparison - but the whole assembly was flaky and temperamental, each mod_perl process took up to 50MB and I lived in constant fear of the whole thing falling over.
That probably has as much to do with my code quality as anything else (and the 'interesting things') but it does show that the modern high level frameworks are a viable alternative. Rails doesn't scale well but it does cluster well, and hardware is cheap. I miss the quality of people you get in the perl community, the quality of documentation (out here they think that having a blog counts) and the cheerful absurdism. I don't miss the posturing and strop, and in terms of getting things done I'm much better off than I was.
PHP demonstrated that language users don't really care whether a language was "planned" or not.
... }
... }
Perl was planned by a *linguist*. It may look like noise, but there is a method to the madness, overall, it is well thought out.
If the amount of time is any indication, I'd expect perl6 to be far more planned out and well reasoned than most other languages.
Think about this:
if(! $bool){
unless($bool) {
The unless actually makes it easier to read, it is more "natural" to humans.
While other languages might have (the "no opening braces for one line rule")
if(! $did_it_already)
do_something()
Perl has this option:
do_something() unless($did_it_already);
I think perl is actually more readable in these cases, it's also more fun.
So many other languages are written with a strictly technical bend, perl has always taken human language itself as a part of its design. Not to mention, it is a *creative* language.
I fear if people won't use it, it is mainly because everyone thinks everyone else uses PHP. (I admit, *I* use PHP because that is what everyone else is using)
It will be interesting to see if people care about the linguistic planning.
And you are:
:) .
1. Mocking environmentalism;
2. Thinking by hating a religion I hate the gullible fools that follow it (if anything, I hate the immoral atheists who created it to abuse their lambs);
3. Disregarding that illogical and contradictory things don't need to be disproven, and that even if presented with a non-illogical and non-contradictory belief such as "flying green elephants no-one has ever seen", it's their task to prove, not mine to disprove.
But I get your point
I was about to say 13256278887989457651018865901401704640, but it appears this number is private property.
Perl 6 != Perl 5++
Perl 5 is a interpreter which happens to grok Perl 5. It's the one and only implementation that implements all features (by definition). There is no other specification.
Perl 6 is not a interpreter or compiler. It's a specification and as such there will be many implementations. Do you know what the current "release" of C++ is? See...
Want to use Perl 6 today? Use Pugs.
Meme of the day: I browse "Disable Sigs: Checked". So should you.
C might be "high level" by some definition of the word but where I come from C is a low level language one step up from assembly. Calling C a high level language with Java, C# and Ruby around is like calling a 4 story building tall when theres a 400 story skyscraper next to it.
set softtabstop=4 shiftwidth=4 expandtab nocp worlddomination
LOL* is just so dumb that I can't really blame the mods.