Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re^6: MoarVM update

by curiousmonk (Beadle)
on Sep 13, 2013 at 07:30 UTC ( [id://1053854]=note: print w/replies, xml ) Need Help??


in reply to Re^5: MoarVM update
in thread MoarVM update

Rakudo Perl 6 on Parrot is too many years away from being sufficiently ready.

This is the most disappointing thing I've read all day today

jnthn decided Perl 6 on JVM was the quickest way to get Perl 6

How quick?

Seriously speaking I don't care if Perl 6 runs on a dozen VM's in its first 6.0.0 release. In fact I prefer it rather doesn't. There are plenty of other important things like the standard library, CPAN compatibility and documentation to be sorted out and standardized before we branch out to other platforms. Perl 5 doesn't run on any VMs apart from its own and we are perfectly fine with it and its perfectly usable. There is no reason for any one to expect anything other wise for the first cut production release. And not just Perl, most new languages that come today run only on one VM, and users are perfectly fine with that.

Perl 6 on JVM might be a decent choice for driving the Perl 6 specification to 6.0.0, and might even be workable for some JVM fans, but it's obviously inappropriate as the only serious VM option. So now what?

Far more important than a few percentage of users who can't use JVM or Parrot or whatever are the vast majority of users who would prefer a working product on anything. And by this definition and strategy whom would you please? There are always going to be users, who can't deploy a compiler on a particular VM. So will we keep starting new projects and never finish them.

You can release 6.0.0 product on any VM, then you have all the time in the world to release it on other VM's when you want. Other wise no matter how great the progress is in the sub projects, there is hardly any reason for anybody to care.

Replies are listed 'Best First'.
Re^7: MoarVM update
by raiph (Deacon) on Sep 13, 2013 at 22:35 UTC
    jnthn decided Perl 6 on JVM was the quickest way to get Perl 6
    How quick?

    First, how quick it would be isn't really important. If there's already one acceptable VM, and the project is late, then no matter how quick a port would be, it's almost certainly the wrong thing to do. Conversely, if there is NOT already one acceptable VM, and the project is late, then the right thing to do is almost certainly to get an acceptable VM done as fast as possible, no matter how long that takes.

    Second, it's only of historical interest how quick the JVM port was. It's done. That's why, in the last few weeks, as just one example of the impact of freeing Rakudo Perl 6 from Parrot, the critically important concurrency and async parts of 6.0.0 that have been delayed by years have started landing. (To acclaim by at least some of the P5ers that have seen it.)

    There are plenty of other important things like the standard library, CPAN compatibility and documentation to be sorted out and standardized before we branch out to other platforms.

    It's pointless having doc, standard libs, and CPAN compatibility if it doesn't run acceptably on ANY platform. To be clear, this is by no means just about concurrency, async, and parallelism, or even speed. Simple buffered IO in Rakudo Perl 6 has fallen victim to a series of basic bugs in the last 12 months, bugs that have taken months to resolve, partly because Parrot contribution has been drying up since 2010.

    Perl 6 has to run acceptably on ONE platform. Perl 5 has an acceptable platform. Perl 6 did not. (You might think that Parrot is/was acceptable, but have you actually checked that assumption out?)

    I too think that the JVM might well be fine as the one platform for rolling out 6.0.0. It was partly chosen because it was about the shortest route to a VM that would let the team drive Perl 6 and the Rakudo compiler toward 6.0.0, but it was also chosen because it's a production worthy VM. It might work out as the sole VM for an initial official 6.0.0 roll out.

    That said, the NQP/JVM backend currently has a few fundamental weaknesses as a Perl 6 platform (eg it takes several seconds to start). While the JVM solves immediate problems Rakudo had, allowing Perl 6 and Rakudo to move toward 6.0.0, there's still a chance it will turn out not to be acceptable to many as a mainstream production VM.

    Some devs who did not do significant work on Rakudo, and who would not write doc or Perl 6 library code, wanted to work on a VM. Are you suggesting they should have been told to go away, maybe to work on, say, a Python VM instead? Regardless, they were not told to go away, and they're now building out a VM that generally uses one quarter of the RAM that the JVM does (so half the RAM Parrot does), starts thousands of times faster, implements 6model and NFG natively to great effect, and so on.

      Telling people to go-away is a long tradition in Perl-6. Telling people to go-away and then whinging that they aren't fixing bugs is a peculiar nonsense. You are not that clever are you?

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others learning in the Monastery: (8)
As of 2024-04-20 00:21 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found