Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options

Re^2: Why Change?

by Arunbear (Prior)
on Apr 07, 2008 at 22:38 UTC ( #678847=note: print w/replies, xml ) Need Help??

in reply to Re: Why Change?
in thread Why Change?

Perl6 is as different from Perl5 as C is different from Java. Syntax is similar, but they serve different purposes. The key is to pick the right tool for the job. In many cases, that choice will be Perl5 over Perl6.
Can you elaborate on that please? What differences of purpose do you see between Perl 5 and 6? (Perl6 macros are a major advance beyond what Perl5 can do, but what else does it have to make you class it as a totally different animal?)

Replies are listed 'Best First'.
Re^3: Why Change?
by dragonchild (Archbishop) on Apr 08, 2008 at 01:48 UTC
    Perl6 has a gazillion things that differentiate it from Perl5.
    • Parrot. Oh. My. God. The ability to mix Python and Ruby libraries in with Perl libraries is huge.
    • Grammars. The fact that Perl6 will be written in Perl6. I can write my own -real- syntax as a CP6AN library.
    • More importantly, I can -remove- syntax. Like, literally remove the syntax. This makes hardened Perl a real possibility. That means greater penetration into certain areas Perl just wasn't useful for.
    • Proper autoboxing. This is something Ruby has over us. No more.
    • A completely portable ASM I can address. That's nice.
    • Properly first-class functions that serialize nicely. This and proper autoboxing makes the P6 version of DBM::Deep a lot easier to write.
    • Oh, yeah. There's Lispy macros.

    Now, why might I use Perl5 over all that sugary goodness? Well, in the first 5-6 years, very little of the CP6AN code will be truly battle-tested. I might be wanting to reuse Perl5 libraries and don't want to trust the Ponie emulation. The same reason why 5.6 interpreters are still in heavy use and why I haven't bothered to even download 5.10 - change is expensive.

    But, unless there's something horribly wrong, I will be choosing P6 over P5 for all new projects. Once 6.0.2 is released, of course.

    My criteria for good software:
    1. Does it work?
    2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
      Grammars. The fact that Perl6 will be written in Perl6. I can write my own -real- syntax as a CP6AN library.

      Which brings us to the #1 reason to not change... CP6AN is a horrible acronym!

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://678847]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (5)
As of 2020-08-05 07:54 GMT
Find Nodes?
    Voting Booth?
    Which rocket would you take to Mars?

    Results (35 votes). Check out past polls.