[tpm] New Parrot release!! .... one year since last update :-)

James E Keenan jkeenan at pobox.com
Sat Feb 17 07:49:11 PST 2018


I was active in the Parrot project from late 2006 until the middle of 
2012.  I've also visited Toronto and attended Toronto.pm meetings often 
since 2001.  So permit me to add my two cents here.

On 02/17/2018 09:06 AM, zoffix at zoffix.com wrote:
> 
> Quoting Abuzar <abuzar at abuzar.com>:
> 
>> On Fri, Feb 17, 2017 at 6:06 PM, <zoffix at zoffix.com> wrote:
>>
>>>
>>> Quoting Abuzar <abuzar at abuzar.com>:
>>>
>>> Last update was Feb 16, 2016, one year ago.
>>>> Side ticker says they're still meeting every week.
>>>>
>>>> Here's the release announcement:
>>>> https://www.youtube.com/watch?v=npjOSLCR2hE
>>>>
>>>
>>> MoarVM is what the kids use these days: http://moarvm.com/
>>>
>>> Next release coming up in less than 24 hours ;)
>>>
>>>
>> Yes, I know, and it's quite sad.  I feel that between Rakudo, Moarvm, and
>> Parrot, priority should've gone to parrot.
> 
> I know little about that era in Perl 6's history, but looking at the Wiki
> for Parrot, it was in development since at least 2005 and was taking its
> last breaths mid 2015. In 10 years, it failed to deliver anything usable.
> 

Parrot actually originated as the Perl community's April Fools Day joke 
in 2001:  a fake announcement about a convergence of Perl 6 and Python. 
Then people said, "Hmm, maybe that shouldn't be a joke."  So at some 
point thereafter, the Parrot project was born with the intention to (a) 
provide both a virtual machine to underlie Perl 6 -- though not 
necessarily *the* virtual machine to underlie Perl 6; (b) a VM to 
underlie other dynamic programming languages as well, thereby allowing 
inter-operability of libraries written in those high-level languages; 
and (c) a VM that performed better than the JVM did in those days and 
was fully open-source.

By the time I joined the Parrot project (at a hackathon organized by 
Andy Lester outside Chicago in November 2006) it was already 5-1/2 years 
old -- much older than the mean lifetime of open source projects.  It 
had already gone through different phases of development and, 
unfortunately, burnout of key personnel.  But it was still in very 
active development.  Indeed, it was probably being more actively 
developed in those years than Perl 6.

Though I liked the sound of "one virtual machine to rule them all", that 
was of no immediate benefit to me, as I didn't program in Python, Ruby, 
Tcl or Lua (to name some of the other dynamic languages that received 
some attention within the Parrot project).  My own motivation for 
participation in the project was:  "Helping to develop Parrot is how I'm 
contributing to Perl 6."  I believe that that was also the motivation of 
more than 90% of Parrot contributors at that time.  For example, Patrick 
Michaud was a major contributor to Parrot at that time, while also 
serving as Perl 6 pumpking.

> MoarVM on the other hand, was started in 2012 and by 2015—in just 3
> years— allowed the first stable release of Perl 6. People love to say
> that Perl 6's long development time killed Perl, but looking at these 
> dates,
> it seems like the delay was because people were trying to create a
> Rosetta Stone of Virtual Machines.
> 

That wasn't the only reason for the delay, but, yes "Rosetta Stone" is 
not entirely inaccurate when it comes to describing our aims.  Indeed, 
the Parrot Foundation was set up in 2008 to make clear that Parrot had 
aims other than being Perl 6's VM.  However, at any given point in time 
it was usually the case that the number of developers working on 
supporting any language other than Perl 6 was zero or one.  The JVM 
improved.  Hence, the absolute need for the Parrot VM, never great, was 
diminishing.

At YAPC::NA::2009 I became aware that there were severe conflicts among 
Parrot's lead developers over the direction of the project.  Some of 
those developers distanced themselves from the project.  Others, such as 
Patrick Michaud, Jonathan Worthington and Will Coleda, refocused their 
energies on Perl 6 per se and played major roles in getting Perl 6 "out 
the door" years later.  The people who remained active in Parrot were 
not capable of sustaining the project either intellectually or 
administratively -- I'm included in that bunch -- and real development 
ceased in 2012.

>> The particular way in which Moarvm took over from Parrot, from the 
>> articles
>> that I read online, it left a bad impression in me.  It didn't sound 
>> nice,
>> it made me feel uncomfortable and lose trust in the development team.
> 
> Considering Mr. Chromatic still trolls core devs to this day, I imagine 
> what
> you say is true.
> 

chromatic had fully distanced himself from Parrot and Perl 6 by 2012, 
which was a year before the announcement of the MoarVM.

I attended the talk at YAPC::NA::2013 in Austin where the MoarVM was 
announced.  And, yes, the fact it had been developed in a non-public 
manner with the intent to be *the* VM for Perl 6 was, at first, 
shocking.  But since Parrot's development was effectively over by that 
point, there was no use getting angry about that.

>> Having many languages use the same free/open/collaborative virtual 
>> machine
>> and inter-operate with each other and/or libraries written on different
>> platforms is a very important goal that shouldn't have been abandoned
>> (reading some part of the moarvm docs, I understand that it was
>> intentionally abandoned).
> 

As I've indicated above, there ultimately was no market demand for such 
an open-source, multi-language VM.

> I didn't realize that was Parrot's actual goal. Yes, it was intentionally
> abandoned in MoarVM, based on some slides I saw, which IMO is a good idea.
> Older parts of Rakudo's code are horribly over-engineered and perhaps
> Parrot's apparent ideal of trying to be everything to everyone infected
> Rakudo and Perl 6. All of a sudden, the existence of this meme makes 
> sense to me:
> https://hbfs.files.wordpress.com/2009/11/perl6book-parody.jpg?w=600&h=1000
> 
>> I feel like what folks were trying to accomplish
>> with parrot is the natural direction that the mindset of programming in
>> Perl takes.  Not having that, feels like something crucial is missing 
>> from
>> the perl experience, and specifically the Perl 6 development era in 
>> Perl's
>> journey.
>>
>> This whole JS thing has filled some of that gap, and the way it's being
>> done is very corporate and puke-worthy.  This is the task that should've
>> been done with Perl, and specifically Parrot.  If it had played out that
>> way, I think we'd be seeing a different landscape in tech.
>>
>> I feel that if a compromise had to be made between resourcing Perl 6 
>> or the
>> Parrot project, then it should've been Parrot, because the world needs
>> Parrot a lot more than it needs Perl 6.
> 
> If it was so much more badly needed, why has its development stalled? By 
> far
> the most contributions to Perl 6 are done by volunteers, for free, with 
> full
> freedom to make a choice what to contribute to. It doesn't look like there
> were any resourcing compromises made. MoarVM just solved the problems 
> Parrot
> had and came out ahead because it was better suited for the task at hand.
> 
> Survival of the Fittest.

But now, of course, it is Perl 6 which faces the challenge of "Survival 
of the Fittest".  True, it is more usable than Parrot ever was.  But is 
it usable *enough* to find a role in information technology going 
forward?  That is the question.

Thank you very much.
Jim Keenan


More information about the toronto-pm mailing list