Apocalypse 12 From Larry Wall
rheum101 writes "Larry Wall just released the eagerly anticipated Apocalypse12 . detailing Perl6 OO in all it glories. To quote the author -> 'One other note: if you haven't read the previous Apocalypses and Exegeses, a lot of this is going to be complete gobbledygook to you. (Of course, even if you have read them, this might still be gobbledygook. You take your chances in life...).'"
I have submitted a story but it was rejected, so please let me resubmit it as a first post instead.
The long awaited Apocalypse 12 by Larry Wall has been just announced by chromatic on perl6-language mailing list. It is one of the most important documents explaining the Perl 6 language design. (All of the previous design decisions are available as Apocalypses by Larry Wall, Exegeses by Damian Conway and Synopses by Luke Palmer, Damian Conway and Allison Randal.) Apocalypse 12 talks about Object Oriented aspects of Perl 6, i.e. about Objects, Classes, Roles (also known as Traits), Multiple Dispatch and also covers some non-OO decisions:
(Lameness filter didn't allow me to post the table of contents. Reason: Please use less whitespace.)
You can access the entire document as a print friendly version. The standard version of Apocalypse 12 is divided into 20 parts. Enjoy.
If you are new to Perl 6 and Parrot, then Perl 6 Essentials by Allison Randal, Dan Sugalski and Leopold Tötsch might be a great introduction. The second edition should be published soon.
Sincerely,
Pan Tarhei Hosé, PhD.
"Homo sum et cogito ergo odi profanum vulgus et libido."
I have a lot of Perl code out there that is probably going to take a while to port, but I have to say that a lot of the changes here really do make me sigh in relief. Lots of what Larry was going over here are the bits I am looking forward to in Perl 6. I use OOPerl, but never have really liked it. The object system will finally make a lot more sense, and be a lot more intuitive for those coming from other OO languages. The fact that we will real classes instead of magic packages, we get to use the keywords 'class' and 'method' rather than 'package' and 'sub', we se dots to dereference objects instead of ->, and so on are nice. There still are a lot of the clever perlisms left over, and there are a lot of cool looking innovations in perl 6, and I am happy with that.
Over all I am really excited about Perl 6. I know it will take a lot of relearning, and some code is going to be a bitch to update, but porting isn't necessarily required unless there is a compelling reason to move to 6, and the more I read about the cleaner approaches to old problems in Perl 6 the more I like it. I also expect many of the changes should help raise Perl above some of the criticisms of language snobs.
Hyperbole is the worst thing ever.
The changes proposed for Perl 6 means no switching between $, @ and % any more.
Sincerely,
Pan Tarhei Hosé, PhD.
"Homo sum et cogito ergo odi profanum vulgus et libido."
In the name of the entire Slashdot community, I would like to thank Larry Wall for the absolutely amazing work he is doing. Thanks Larry! There are many people working very hard to make our dream come true and give us the most innovative and cutting-edge programming language in existance, which Perl 6 is soon going to be. It would not be possible without all of the Perl 6 and Parrot contributors. Please let us also not forget about brave people who still actively maintain Perl 5 and will keep doing it even after Perl 6 is ready. The Ponie project shows us that Perl 5 is not going away. The work of all of those people is invaluable. And this is all to give us free software development platform of the 21st century, while uniting Perl, Python, Ruby, Tcl, Scheme, Ook, Forth, Befunge, BASIC and many other languages thanks to Parrot, finally allowing them all to seamlessly work together and ending the flame wars between them. Thank you!
Sincerely,
Pan Tarhei Hosé, PhD.
"Homo sum et cogito ergo odi profanum vulgus et libido."
The whole doc is really fascinating, and full of witty Larry Wallisms, but for those who don't read it all the way through to the last page, the Apocalypse ends with a 'Optional Mandatory Cross-Disciplinary Joke for People Tired of Dogs' section:
Biologist: What's worse than being chased by a Velociraptor?
Physicist: Obviously, being chased by an Acceloraptor.
Followed by a 'Future Directions' section:
Away from Acceloraptors, obviously.
Larry Wall is so cool.
Hyperbole is the worst thing ever.