Slashdot Mirror


Perl 6: Apocalypse 6 Released

data64 writes "The latest Apocalypse talks about subroutines. Looks like we finally get type signatures which are way more powerful than the rudimentary prototypes available with Perl5."

5 of 247 comments (clear)

  1. Don't forget Parrot by Ars-Fartsica · · Score: 5, Insightful

    The VM is showing 10x speed improvements in preliminary tests. Couple that in with Moore's law and Perl (or any languages that compiles to the Parrot VM) becomes a very attractive language for more types of problems.

  2. Perl, the new ADA by ajm · · Score: 5, Interesting

    I used to think that perl might become the new COBOL. Now it looks like it's going to be the new ADA. Lots of nice features but such complexity and cleverness that even the people who use it don't like it. ADA's a good language, but no one uses it. It would be a shame if perl 6 went the same way.

    Perhaps the cleverness of the ideas are not being tempered by real use at this point. A language does not become great by adding new syntax and semantics for each feature but by refining it to the essential units needed to express all the rest. We should not celebrate the fact that "will" and "is" are very similar ways to express traits in perl 6. We should ask instead why do we need both? Further, is it possible for me to define a new "wont" statement in perl, or are "will" and "is" special things only language designers can implement?

  3. Re:Perl is turning into a completely new language by Enoch · · Score: 5, Funny

    Then as time so pass, more and more "features" are added into perl 5.004 and the result is that now you have too many features spoils the broth.

    I'm sorry. I think you are looking for this every-feature-is-in-the-core language.

    Glad to point you in the right direction!

    enoch

  4. Seeing the forest through the trees by RichDice · · Score: 5, Interesting
    On first glace, the P6 syntax looks... scary. And I'm even someone who's been into P6 (at least marginally) for a few years now.

    What I think though is important to remember is that if all you look at is the syntax, you won't appreciate the power -- and simplicity -- of the idioms. Taken out of context and put into cooked up examples meant to show off the new syntax, it looks bad... really bad. But once you actually start programming in it, you'll find that most of what you want and need to do will actually come quite simply.

    That vast majority of all this new syntax will be applied in the vast minority of programming cases. Much of it will get sucked up into modules, classes, etc., that you'll use without worrying about what's actually going on under the hood. And "the rest of us" will just have an incredibly powerful language that is actually easier to program.

    Cheers,
    Richard

  5. Perl 6 is easier than Perl 5. Really. by ChaosDiscord · · Score: 5, Interesting
    But a higher level scripting language should be as close to english (or another human language) as possible.

    I certainly don't look forward to COBOLScript.

    Human languages are an ambigious mess. Computers only want unambigious constructs. Having programmed in COBOL and and a few so called "fourth generation languages", let me say that writing in something that is close to English is really irritating. It's never quire English enough to allow me to express myself. You end up having to learn a specialized language that isn't really quite English. If I'm going to learn a specialized language, I might as well learn something that is easy to type and easy to scan visually.

    Perl is a big, complex language, yes. But like real languages, you can learn it with very simple steps. You can get complex, productive things done with a just a quick introduction. If you want more power, it will take more learning, but it's available. Perl 6 aims to accomplish this evem better tham Perl 5.

    Yes, the example given in the article are a bit convoluted. The entire point of the article is to explore all of Perl 6, not just the commonly used bits. In fact, one of main goals of Perl 6 is to make the common case and the introductory case less confusing than in Perl 5. Really. And everything revealed so far has supported this, it's just that Larry doesn't make it too clear.

    Take for example expressing that a function takes three arguments in Perl 5. The best you can do is:

    sub my_function($$$) {
    ....my($arg1, $arg2, $arg3) = @_;
    }

    (The "...." represents spaces because Slashdot's code filter is crap.)

    In this example, Perl will not check that callers do the right thing. In Perl 6, you get this:

    sub my_fuction($arg1, $arg2, $arg3) {
    }

    A clear improvement, and Perl will actually verify that callers do the right thing when calling you, usually catching an error at compile time!

    In general Lary's Apocalypses have been a bit obscure. He's focusing on the big picture and the little details. Damien's Exegesis's is generally alot easier to read for people less interested in deep thought and more interested in concrete details. Wait a week or two for Exegesis 6 and give that a read. I think you'll find that the common case is slightly simplier and more obvious than in Perl 5, while the system also allows for more complex expressions that weren't well supported in the Perl 5.