Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^2: Will Perl 6 Replace Perl 5?

by moritz (Cardinal)
on Jan 04, 2010 at 13:44 UTC ( [id://815566]=note: print w/replies, xml ) Need Help??


in reply to Re: Will Perl 6 Replace Perl 5?
in thread Will Perl 6 Replace Perl 5?

Most people don't believe that Perl 6 is "the next version of Perl".

That's what many people say, but when I engage them in discussion I find that what many people actually mean is

Perl 6 is not the next version of Perl 5

Which is right, of course.

In some ways Perl 6 is quite different from previous Perl versions: it breaks backwards compatibility, is developed in a different mode (specification and test suite first, multiple implementations possible), has a slightly different syntax.

But what makes a language Perl? It's only partly the syntax; it's mostly the principles behind the language: DWIM, whipuptitude, TIMTOWTDI, (limited) correspondence with natural language and so on. I've written about that before.

Still I can see why many Perl 5 programmers fear the "Perl6 is the next Perl version" statement, and deny it because they fear it: It's not yet near wide spread adoption, there's no clear migration path, it's not backwards compatible, etc. That's why it's important to communicate clearly that it's not the same situation as with gcc, for example: Users of gcc-$version will eventually have to upgrade to gcc-$higher_version, because gcc-$version will stop being maintained, and thus not being ported to modern CPU architectures, libc version etc.

I don't see that risk for Perl 5 any time within the coming decade: Even when we'll have a Perl 6 compiler that is fast, stable and portable, and implements a sexy Perl version, tons of software and libraries will keep Perl 5 alive. And of course the stubborn programmers that just love Perl 5, and will continue to love it even if "the next major version" is there.

Perl 6 - links to (nearly) everything that is Perl 6.

Replies are listed 'Best First'.
Re^3: Will Perl 6 Replace Perl 5?
by JavaFan (Canon) on Jan 04, 2010 at 13:56 UTC
    I find that what many people actually mean is
    Perl 6 is not the next version of Perl 5
    Which is right, of course.
    Well, duh, that the latter is true is bloody obvious. Perl 5.10 isn't the next version of Perl 5.8 either.

    I can't talk for the people you've engaged in discussion, but when I say that I think "Perl 6 isn't the next version of Perl", I mean it in the same way as if I say that I don't think that "Kurilla isn't the next version of Perl". Nor have I considered Ruby to be a version of Perl ('next', 'different', '...').

    Still I can see why many Perl 5 programmers fear
    Fear? Noone was talking about fear. And the people I talk to, don't fear Perl 6. Just as they don't fear Ruby. Of Java. Or C. Or any other existing or emerging language.

    It's a bit cheap to dismiss people who refuse to drink the Perl 6 Kool-Aid as being fearful.

      Well, duh, that the latter is true is bloody obvious.

      If you say it as clearly as I did, yes. But many people seem to expect that Perl 6 = Perl 5 + X, which it isn't, but which would make it a next version of Perl 5.

      I'm still curious: What criteria would a language (any language) have to fulfill so that you would call it the next version of Perl?

      Perl 6 - links to (nearly) everything that is Perl 6.
        What criteria would a language (any language) have to fulfill so that you would call it the next version of Perl?
        For starters, it should be (largely) backwards compatible. For instance, the majority of CPAN code (just to take an example) should run without any problems or differences. That's not true with Perl 6. Operators change names. Sigils change. The regexp syntax is quite different. For loops change. Hash indices change. There'll be syntax changing whitespace. And no doubt there'll be more, but I don't look that often into Perl 6.

        Now, noone has to defend the choices that were made. That's not the point. But I cannot take a Perl 5 program, and gradually add Perl 6 constructs (I'm aware of the plans to be ablet to compile Perl 5 - but that's not backwards compatible - then Perl 5 could be called backwards compatible with sh, because it's able to fire up sh for you).

        There are too many syntax changes to make it backwards compatible in my book.

        Note that I'm not saying 100% backwards compatability should always be achieved. But IMO, the changes with Perl are too much that I won't call "Perl 6" the same language as "Perl".

Re^3: Will Perl 6 Replace Perl 5?
by phaylon (Curate) on Sep 20, 2010 at 18:04 UTC

    For me it comes down to a couple questions. And I've got a feel that these are some of the actual questions many people are looking for answers for:

    1. When will Perl 6.0(.0) be stabilized?
    2. Which Perl 6.(* + 1, 2, ...) is expected to not break Perl 6.*
    3. When will the developers of the spec consider it stable enough to value back-compatibility and/or ease of upgrade over progress?
    4. When's Rakudo expected to catch up with the former?
    5. Will I be able to use the CPAN?
    6. When will I be able to use the CPAN, and how much of it?

    Personally, I think I know many of the answers, but they're probably outdated because I'll personally probably be on Perl 5 unless there's either a strong access to CPAN or CPAN like functionality, or Perl 6.* is stable enough for casually writing CPAN modules without frequent breakuppage.

    So, in essence, people might say "Perl 6" and not "Perl 6.0.0," because they don't know the planned versioning scheme for the specification, or the version of the specification that is planned for the above language criteria.

    EDIT: Mixed up some versions in the list


    Ordinary morality is for ordinary people. -- Aleister Crowley

      Chromatic's whole point is there wont be a 6.0.0 ever. As a matter of fact he is telling the version number is just a farce. Rather there will monthly releases and star releases. Now we have to decide for ourselves what is stable and ready for us to use in our environments.

      Meanwhile with every monthly release bugs, get fixed, things get stable, new things get added.

      Although he is completely correct in concept, I don't it will help the Perl PR. Rather it will be a disaster

        Chromatic's whole point is there wont be a 6.0.0 ever.

        That's not my point at all.

        As a matter of fact he is telling the version number is just a farce.

        They often are. Should you not use Test::More because it's almost a decade old and hasn't reached that mythical, magical, flying candy-flavored unicorn version number of 1.0?

        Now we have to decide for ourselves what is stable and ready for us to use in our environments.

        You've always had to decide that. Again, see Test::More.

        I used 6.0.0 as an example. Nobody cares about the actual numbers, but about the intentions of the developers behind them. If version numbers were unimportant, we wouldn't need major and minor version releases, or mark RC's as such.


        Ordinary morality is for ordinary people. -- Aleister Crowley

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others studying the Monastery: (4)
As of 2024-04-25 15:10 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found