REPOST: Parrot aka Perl 6 info

Ron Stephens rdsteph at
Sun Dec 30 10:26:49 EST 2001

This is a follow on to thread from here that Dan Sugalski (perl
implementer) posted over on comp.lang.ruby, that didn't show up here. I
copy it here fyi only, just to show the firm intent of the Perl
implementers to create a runtime that will run both ruby and Python as
well as Perl. FWIW:::

The folks over at comp.lang.ruby ae quite interested in this.

I suppose if anyone has any follow up questions, they could be directed
to Dan at his email address listed at the end of his post. I wonder how
valuable such a "new runtime environment" for Python might be? I wonder
if the Python core team is well aware of the Perl 6 efforts?

At 07:57 PM 12/29/2001 -0800, ptkwt at wrote:
>In article < at>,
>Dan Sugalski  <dan at> wrote:
> >At 09:57 AM 12/30/2001 +0900, Ron Stephens wrote:
> >>However, for what its worth, the PERL 6 implements, whom I met and
> conversed
> >>with at the MIT Lightweight Languages conference, are definitely
> truing, as a
> >>goal, to create a PERL 6 runtime environment that can easily and
> >>someday later on, run Perl, Ruby, and Python. I suppose that could
> >>additional
> >>runtime environments for these languages, just like Jython is an
> >>runtime environment for Python. Maybe that could work, and give some
of the
> >>advantages of "bringing the tow (or , in this case, three) streams
> >>development back togethers into one mighty river.
> >>
> >>I am a doubter about this, btu who knows?
> >
> >Oh, don't doubt. We've pulled it off already, to an extent, with the
perl 5
> >engine, and that's a mess as these things go.
> >
> >Technically, an engine capable of running all three languages (and
more) is
> >pretty trivial as these things go. Inter-language calling conventions
> >the toughest and that's not really tough at all. The politics
involved are
> >by far the biggest hurdle, and they exceed the technical difficulties
> >many orders of magnitude.
> >
> >Having said that, Parrot will be *capable* of running perl, python,
> >ruby. (Whether there's a full-blown language parser for python and
ruby is
> >up in the air--I'm all for the ruby parser in ruby, as that'd make my
> >really easy.
>So what do we have to do?  Parse Ruby and spit out Parrot bytecode,

For now, yep. Once we get things situated right, you won't even need to
spit out bytecode. Spitting out a full AST would be sufficient, which
gets fed into the compiler module.

>I think there is a project or two out there to create a Ruby parser in
>Ruby.  JRuby could always be modified, I suppose, to become PRuby -
>might be another option.

Sure, and if you have a ruby parser in ruby, we can run it through the
engine as it stands now and spit out ruby bytecode. We run that through
ruby bytecode->parrot bytecode converter (which is already partially
written) and get parrot bytecode which we then freeze to disk and poof!
have a working parser.

> >We'll have full bytecode translators, but those are trivial
> >compared to parsing the languages) Even if it's not fully used, it'll
> >Parrot a better engine.
> >
> >And anyway, at this point I can wave the "Hey, look, we have a JIT!"
> >to entice people into writing a ruby parser for Parrot... :)
>I think that there are a lot of Rubyists out there who want to see a
>parser for Parrot and some who would even be willing to work on it.
>wouldn't it be cool if we could get there before the Pythonistas?

Yep, darned cool. Heck, we don't have a full perl parser yet--you could
even beat us! (Which, personally, I think would be amusing)


--------------------------------------"it's like
Dan Sugalski                          even samurai
dan at                         have teddy bears and even
                                      teddy bears get drunk

========= WAS CANCELLED BY =======:
From: Ron Stephens <rdsteph at>
Newsgroups: comp.lang.python
Subject: cmsg cancel <3C2F3307.B47C9E26 at>
Control: cancel <3C2F3307.B47C9E26 at>
Date: Mon, 31 Dec 2001 03:17:50 GMT
Organization: A poorly-installed InterNetNews site
Lines: 2
Message-ID: <cancel.3C2F3307.B47C9E26 at>
X-Trace: 1009774202 27193 (31 Dec 2001 04:50:02 GMT)
X-Complaints-To: usenet at
NNTP-Posting-Date: Mon, 31 Dec 2001 04:50:02 +0000 (UTC)
X-No-Archive: yes
X-Unac4ncel: yes
X-Commentary: I love NewsAgent 1.10 and the Sandblaster Cancel Engine Build 74 (19 March 1999)

This message was cancelled from within Mozilla.

More information about the Python-list mailing list