Parrot... is Python dead now?

Tim Peters tim.one at home.com
Sun Apr 1 19:19:23 EDT 2001


[Alex Shindich, on the Van Rossum / Wall Parrot interview, at
 http://www.perl.com/pub/2001/04/01/parrot.htm
]

> I personally have very mixed feelings about this project.

You can stick to Python, then.  I probably will, until the worst initial
Parrot kinks are ironed out.  The interview featured a Parrot example I
wrote, which Larry and Guido both loved, but, frankly, I thought (e.g.)

    while left_angle_right_angle:

was a significant step backwards from both Perl's

    while (<>) {

and Python's

    for line in sys.stdin.xreadlines():

Although there's no denying that the Parrot form is more readable than
either!  But readablility for first-timers isn't everything.

> One the one hand I have always thought that interoperability between
> P&P would be a great thing. I even planned (for some time now) to start
> a project called "Babylon" to create an interoperability framework for
> Python, Perl, and Tcl.

Jean-Claude Wippler devoted quite a few brain cells to that goal over a long
period.  Pick his brains.  Nothing is as easy as it seems at the start, and
so long as they're separate projects *nobody* is going to compromise to make
life easier for the others.

> On the other hand, the new language scares me... The biggest reason
> of all is that I am deeply in love with Python's syntax. After all,
> Perl and Python are roughly equivalent in what they offer to the
> programming community.

In which case the duplication inherent in continuing to develop both is a
wicked waste of effort.  That's one of the points made in the interview.

> But I could never bring myself to learn Perl's ugly syntax. I
> love the fact that Python syntax can be easily read by people who know
> nothing but BASIC -- the syntax is simple and natural.

It's clear from the interview that Parrot intends to retain that, but without
sacrificing Perl's productivity aids (shortcuts and "hidden" connections and
helpful implicit coercions).

> My question is, why can't Parrot be an open virtual machine just like
> Microsoft's CLR? That way, both Python source code and Perl source code
> would compile down to Parrot byte codes, and Pythonians wouldn't have to
> abandon Python's syntax.

If people want that enough, I'm sure somone will write a Python->Parrot
source translator, although Guido has shown no interest in it.

> I understand that Perl could use some syntactical cleaning up... but
> why abandon Python?

Don't think of it as abandoning Python, but as embracing Parrot <wink>.

> In fact If people like Parrot syntax, why not have parrot compile
> to common byte code too?

In effect, Parrot is Python 3000, and Guido won't be stalemated again by
worrying into a state of paralysis over backward compatibility with every
little mistake made in the Python VM.  While he and Larry won't actively seek
to make the Parrot VM incompatible with Python or Perl bytecode, if it turns
out that incompatibility buys something for Parrot worth getting, tough luck.
New language, new rules.

guido-wants-a-cracker-ly y'rs  - tim





More information about the Python-list mailing list