3 ms·
> during that time, Rakudo and Parrot were always run by different teams Many folk have contributed to both projects. But yes, they were (and remain) separate
by raiph 12y ago
> during that time, Rakudo and Parrot were always run by different teams
Many folk have contributed to both projects. But yes, they were (and remain) separate projects, with Patrick at that time being the point person for Rakudo, not Parrot, and others being point people for Parrot, not Rakudo.
> {the teams running Rakudo and Parrot} had a limited understanding of each others' perspective
Perhaps.
My own understanding (which is admittedly also merely armchair analysis after the fact for most of the period 2006 thru mid 2011) goes something like this.
First, the gap between Rakudo's purpose and Parrot's purpose became (or maybe was from the get go) an irreconcilable conflict.
(Rakudo's purpose is to ship a practical P6 compiler, including a multi backend strategy to address Larry's "must target VMs" requirement. Parrot's purpose is to ship a practical VM for dynamic languages, with P6/Rakudo given no special status.)
Probably the last chance to have gotten things back on track, which I define as Parrot trying to serve P6's and hence Rakudo's needs, even if it did other things, was 2010. Patrick was made a member of the Parrot Foundation's small board in 2009. Rakudo Star was coming. jnthn had designed and implemented 6model and NQP and there was a chance Patrick could have convinced Parroteers to replace the broken stuff in Parrot with these pieces.
But then, just as Patrick needed to be most available to steer Rakudo (and perhaps to steer Parrot too) through the very difficult year 2010 (to produce, ship and support an initial Rakudo Star; to evolve Rakudo in the face of the problems of fit with Parrot; to try keep Parrot viable), he suddenly had to drastically lessen his involvement -- falling to near zero in late 2011 and since.
(NB. Please don't say this was Patrick exhibiting the "leave phase" syndrome you talked about.)
At this point, instead of the previous situation in which the conflicting directions were more implicit than explicit, it now became clear Rakudo and Parrot were going to do their own things. They might both survive and work with each other. They might not.
In early 2011, commits to the master branch of the Parrot repo fell of a cliff.
By 2012 it really looked bad for Parrot, judging by the paucity of commits and #parrot (in)activity.
In spring 2012 jnthn secretly started MoarVM. He reasoned that if by some miracle Parrot got back on track in a way that obviated the need for MoarVM he could mothball it or transfer the best pieces. If not, he'd charge right on ahead and finish MoarVM.
Fast forward to 2014. Reini Urban is about the only person working on Parrot and it is currently falling further behind in supporting Rakudo's current needs. For example, concurrency. In contrast MoarVM now far outperforms Parrot as a backend for NQP and Rakudo and looks set to pull much further ahead this year.
- chromatic 12y agojnthn had designed and implemented 6model and NQP and there was a chance Patrick could have convinced Parroteers to replace the broken stuff in Parrot with these pieces. Multiple Parrot developers volunteered to do this. Rakudo developers said "No", or in some cases "Not yet." Said developers tired of being called out for not supporting Rakudo on one hand and being told not to improve Parrot on the other hand and stopped working on Parrot altogether. You can easily verify this by looking at mailing list archives from that period.