Channels ▼

Web Development

Letter from the Editor

August, 2003: Letter from the Editor

Perl Gets a Ponie

The Perl Journal August, 2003

It's one of life's little ironies that sometimes you have to go backward in order to go forward. At the recent Open Source Conference in Portland, OR, Larry Wall announced the Ponie Project, an effort to port Perl 5 to run on Parrot. It's a huge undertaking, but a tremendously necessary one. An abrupt shift to Perl 6 would break millions of lines of Perl 5 code out there that are, right now, performing just fine.

So we need an interim solution like Ponie that allows Parrot adoption, but will allow backward compatibility. But the Perl 5 internals are quite a house of cards. Running on Parrot will require digging around in there without bring it down around our ears. Any code base of any appreciable age (and Perl 5 surely qualifies) inevitably accumulates a healthy crust of weirdly interdependent code. Sometimes, you can't fix one thing without breaking about five things. Even the most cleverly designed systems seem not to escape this rule. So while we can pat ourselves on the back for Perl's adaptability, flexibility, and yes, cleverness, I don't envy the Ponie developers their task. It ain't gonna be pretty.

To ensure Perl's future, the Ponie developers will need to exhume a few skeletons. It will be a lot of work, and all of it just to get Perl past what might be termed a transitional phase. In reality though, I'd bet that quite a bit of Perl 5 code will continue to be run via Ponie for many years to come. If Ponie works, and all that old Perl 5 code still does its job, rewriting it to take advantage of Perl 6 features may become the ultimate back-burner project. Still, having the freedom to not update that old code seems like just another reason to use a language like Perl that's so committed to flexibility.

Renew Now and Save!

We want to thank you all for making this journal a success. To show our appreciation, we have a special offer for TPJ subscribers who renew their TPJ subscription between now and November 1.

We're offering you, for this limited time, the option to renew your TPJ subscription at a special low rate of $16/year for one, or even, two years. When you do, you'll also get one year of access to at no extra charge. In addition to all the great Perl coverage you count on in TPJ, you'll get columns by Moshe Bar, Jerry Pournelle, Martin Heller, David Em, Andy Patrizio, and Lincoln Spector, plus news and views on a wide range of technology topics—and much, much more.

What's more, we'll also be providing something many of you have asked for—access to complete archives. Effective with next month's issue, you will have access to every issue of TPJ—from Spring 1996 to the present—at no extra charge.

A standard TPJ subscription is $18/year. But if you renew now, you'll get the low rate of $16/year, plus one year of access to All current subscribers are eligible—even if you just subscribed recently, you can still take advantage of this special offer to extend your current subscription for up to two additional years!

Just visit to take advantage of this limited-time offer.

Kevin Carlson
Executive Editor
The Perl Journal

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.