Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

Re^3: Will Perl 6 Replace Perl 5?

by furry_marmot (Pilgrim)
on Jan 07, 2010 at 18:07 UTC ( [id://816155]=note: print w/replies, xml ) Need Help??


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

Look, it just seems to me that every one of these threads, here and elsewhere, seems to start with someone who's been using Perl for some length of time getting curious about Perl 6. They look around, google about, reading what they can find on perl6.org, and come away confused as to what it is and (oh my goodness) when it will be done.

So they post some question about Perl 6 and then they (and all else reading the thread) get to read explanations like "it's a spec, not an implementation", "we're trying to get away from the concept of finished/not-finished", "people asking about the status of Perl 6 is a distraction" and my favorite, to the effect that "the specification is not complete and probably never will be because that's not the goal".

I, like a lot of reasonable and knowledgeable persons, read this and think, Huh? I'm not saying any of the above is wrong, but can you see at all how so many postings regarding Perl 6 re completion|release dates|features can be a little hard to grok?

I've used Perl for 12 years and continue to find it useful. I use all manner of advanced techniques, have written some well-received, hopefully helpful replies here and elsewhere, document my code, used to read the Perl Journal and Perl Review regularly, have greedily sucked down all the DeveloperWorks articles, always check to see if there's a new article on perl.com, have been to conferences, and even managed to get all the way through Higher Order Perl without my head exploding. While I don't consider myself an expert, I think I know a thing or two about Perl.

And yet I am baffled by the replies from the Perl 6 crowd. Really. Baffled. Not whining because it doesn't fit my sensibilities, nor simply annoyed enough to write a trolling reply, but truly baffled. Reading the journal entry by patrick, linked above, I found myself reacting rather strongly. I shan't repeat my comments as it might have been an over-reaction, but it all just seems so odd and impenetrable.

I don't know if I'm making my point very well, but I didn't want to appear to be ignoring your reply. Back to work for me...

marmot

Replies are listed 'Best First'.
Re^4: Will Perl 6 Replace Perl 5?
by chromatic (Archbishop) on Jan 07, 2010 at 19:05 UTC
    ... can you see at all how so many postings regarding Perl 6 re completion|release dates|features can be a little hard to grok?

    As I write almost every day, we release a new version of Rakudo Perl 6 every month, like we've done for the past two years. You can use it right now. It exists. You can write real code with it.

    Should you use it for your project? I can't answer that. I don't know what your project is.

    Should you use it for your business? I can't answer that. I don't know what your business does, how you manage developers, what experience you have, or your level of comfort and risk tolerance.

    You may believe that freezing the specification, concentrating all volunteer time and effort, and ignoring everything else until there's a tarball named perl6.0.0.tar.gz will answer both of those questions affirmatively for most people. We don't, and we don't manage the project that way.

    This is software, developed by a passionate and curious community. There is no "done".

      Bingo!

      Should you use it for your project? I can't answer that. I don't know what your project is.

      Should you use it for your business? I can't answer that. I don't know what your business does, how you manage developers, what experience you have, or your level of comfort and risk tolerance.

      No offense, but Duh! That's true of any tool or resource I might consider using. If Perl 6 were released as 6.0.0 today, I'd still have to evaluate it in terms of learning curve and compatibility to decide whether I can use it now or later or at all. For me, there are enough things not implemented yet, and I am sufficiently pressed for time most of the time, that I'll leave it alone a while.

      But, curiously, I didn't ask that question. I made comments regarding people who naively ask when Perl 6 will be done, or some such thing and how some replies don't make as much sense as you might think. With regard to what I believe about

      ...freezing the specification, concentrating all volunteer time and effort, and ignoring everything else until there's a tarball named perl6.0.0.tar.gz

      Ummm...this would be some of that misconstruing I mentioned. I didn't put all that on you. But for what it's worth, I'm not sure why that would be such an issue for you, assuming the project was at a stage where that made any sense. I mean, I use a bunch of open source apps versioned at .01 or .5 or whatever the author(s) think appropriate, to indicate that it does more or less what they set out to do, but isn't done or isn't polished or has bugs or a list of to-dos or whatever. Same with Perl modules. They do what I need, so I'm not concerned with the version number. But this is Perl we're talking about and I fail to see what is so unreasonable about assuming that at some point there will be a Perl 6.0.0. It has always been so in the past. There is a list of bugs/to-dos, which suggests you would want to close them out. There are partially working features that say "not implemented yet", suggesting there's a list of things to implement. Is it really so unreasonable to ask how that's coming along?

      But even then, that's not my point. It's the replies of We don't...manage the project that way and There is no "done". Why the hell not??? And who's asking anyway? Are you saying there will be no numbered releases? Why can't there be a Perl 6.01, 6.02, then 6.4 and 6.8, etc, etc??? Are you speaking of not done in the sense that it will continue to evolve? Well...yeah, I know that. Does this mean that Perl 4 was never done in your sense of it? And similar for Perl 5? Philosophically I get that, but at some point someone stopped working, gave it a rev number, and sent it out in the world. Gettting hung up on whether it's "done" just muddles the conversation. For example, what happens if the list of features are all implemented, ponie and parrot et al work to their full extent, there's a Perl 6 CPAN, and documentation covers everything anyone can think of? Do you release something called 6.0 then? I would think so, but you really do seem to be saying you might not. Or are you saying you'd release it, but insist it's not truly done, which I suppose is true, but once again, who's asking? It is truly boggling to the mind.

      So there's my point. Not whether I can use it or when it will be done, but simply that discussing this with Perl 6 folk feels like arguing with a wall -- and I'm really not trying to argue. I don't doubt your intelligence, talent, and sincerity. Hell, I've even got several books with your name on them a few feet from me. It's just that the changes in Perl 6 are major, huge. There are many pieces to it, and many little related projects. It peaks the interest of many. But it's hard to make heads or tails of what's what from the perl6.org site. Then someone, with a happy gleam in their eye asks, cheerfully, innocently, even lovingly, "So when do you think it might all come together?" Or someone is asked by their management to determine whether they should use one version or another of some software for a big project, and one of those questions is Perl 5 or Perl 6, because they've heard there's a new version in the offing. And they get a face full of "there is no 'done'" or "only you can know if it will work for you". It's just not helpful.

      If you can enlighten me, I'd appreciate it. If I'm pissing you off, then just let it go. I'm sure we both have better things to do.

      marmot
        No offense, but Duh!

        Then I really don't understand the question.

        If you know that you have to evaluate when you can use Rakudo Perl 6, why does the version number matter? There was even serious talk about not having version numbers to avoid all of the mystical magical thinking that surrounds version numbers.

        For goodness's sake, cpan.org even had "Don't use Perl 5.10.0 in production; it's only for testing!" because it had that mystical, mythical, might-eat-your-data trailing ".0" in the version number.

        I use a bunch of open source apps versioned at .01 or .5 or whatever the author(s) think appropriate, to indicate that it does more or less what they set out to do, but isn't done or isn't polished or has bugs or a list of to-dos or whatever. Same with Perl modules. They do what I need, so I'm not concerned with the version number.

        Like I said, we're not into magical version number thinking. We could have slapped 6.0.0 on any tarball in the past couple of years and people would still have to evaluate it on their own.

        Is it really so unreasonable to ask how that's coming along?

        What you actually wrote was:

        Asking about a Perl 6 release date will just get you defensive responses from the Perl 6 folks....

        I can give you the past 24 release dates for Rakudo Perl 6, and I can give you the next dozen--probably more. Pick one of those 36. Pick all of them. Don't pick none of them, because they're all Perl 6 release dates.

        Does this mean that Perl 4 was never done in your sense of it? And similar for Perl 5?

        Perl 4 is done now, in the sense that it's abandoned. Perl 5 isn't done.

        If you can enlighten me, I'd appreciate it.

        If you can tell me how to answer any or all of these questions accurately, I will give you your release date (for whatever you think "release date" means):

        • How much work can a group of people do in a period of time?
        • How long will it take a group of people to do some work?
        • How many people will it take to do some work in a period of time?

        My preference is to avoid making public guesses where I don't have sufficient information and instead concentrate on delivering software that gets better and more complete and more usable and more useful every month. You have to evaluate 6.0 or 6.0.1 or 6.2 or 6.66 or whatever anyway. Why does it matter if one version has #25 and not 6.0?

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others romping around the Monastery: (1)
As of 2024-04-24 15:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found