<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>dagolden &#187; parrot</title>
	<atom:link href="http://www.dagolden.com/index.php/category/parrot/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dagolden.com</link>
	<description>Whatever comes to mind</description>
	<lastBuildDate>Thu, 09 Sep 2010 10:31:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Thoughts on Perl 6 hype and backlash</title>
		<link>http://www.dagolden.com/index.php/947/thoughts-on-perl-6-hype-and-backlash/</link>
		<comments>http://www.dagolden.com/index.php/947/thoughts-on-perl-6-hype-and-backlash/#comments</comments>
		<pubDate>Mon, 09 Aug 2010 02:44:32 +0000</pubDate>
		<dc:creator>dagolden</dc:creator>
				<category><![CDATA[parrot]]></category>
		<category><![CDATA[perl-programming]]></category>
		<category><![CDATA[perl6]]></category>
		<category><![CDATA[ironman]]></category>

		<guid isPermaLink="false">http://www.dagolden.com/?p=947</guid>
		<description><![CDATA[The news of "Rakudo Star" (a Perl 6 compiler) has spawned enough hype to prompt a backlash. I haven't entirely decided whether I think this is significant or not, much less good or bad for the Perl community, so this post is my attempt to organize my thoughts on it. Factually, Rakudo is not new [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://news.perlfoundation.org/2010/07/rakudo-star---a-useful-usable.html">news</a> of <a href="http://rakudo.org/">"Rakudo Star"</a> (a <a href="http://perl6.org/">Perl 6</a> compiler) has spawned enough hype to prompt a backlash.  I haven't entirely decided whether I think this is significant or not, much less good or bad for the Perl community, so this post is my attempt to organize my thoughts on it.</p>
<p>Factually, <b>Rakudo is not new</b> -- there have been thirty-one development releases of it.  But <strong>Rakudo Star is the first prototype of an end-user distribution tarball</strong> that includes the latest Rakudo, the Parrot virtual machine, existing documentation, build instructions and so on.  I would say it is <strong>designed for Perl 6 experimenters, rather than Perl 6 implementors</strong>.  It means that anyone interested in Perl 6 can now just do this:</p>
<pre class="brush: plain;">
$ tar xzf rakudo-star-2010.07.tar.gz
$ cd rakudo-star-2010.07/
$ more README
... satisfy library prereqs ...
$ perl Configure.pl --gen-parrot
$ make
$ make install
$ ./perl6 -e 'say &quot;Hello World&quot;'
</pre>
<p><strong>For the Perl 6 project team</strong> -- or more broadly, anyone carrying the Perl 6 torch for the last ten years -- the release of Rakudo Star has huge symbolic importance.  They're saying, in effect, <em>"look at this cool project we've been working on!  We want you to get as excited as we are about what Perl 6 will be able to do"</em>.  And, you know what, if I were working on something for ten years, I'd be wanting to celebrate, too.</p>
<p><strong>For those outside the project team</strong>, the significance of the release isn't so obvious.  I can imagine a wide range of reactions:</p>
<ul>
<li><em>"Cool!  I've been wanting to try some Perl 6 but didn't know where to start."</em></li>
<li><em>"What's the big deal?  I can't use it for anything real yet."</em></li>
<li>"This sucks.  It's too (big|slow|buggy|incomplete)."</li>
<li><em>"Gee, thanks.  Perl 6 gets the attention and Perl 5 gets ignored... again"</em></li>
<li><em>"Perl 6?"</em></li>
</ul>
<p><strong>There is no way reactions to Rakudo Star can possibly live up to the hopes and dreams of those involved the project</strong>.  I'm not surprised that some of the project members <a href="http://www.modernperlbooks.com/mt/2010/07/an-accurate-comparison-of-perl-5-and-rakudo-star.html">seem defensive</a> in the face of criticism.</p>
<p>Leaving the emotional reactions aside, <strong>Rakudo Star still is a significant step forward for Perl 6</strong>, as it means inviting a less dedicated group of participants to test and react to the evolution of both the language and the implementation.  Some of that will be negative, but some will be positive.  More importantly, it will provide focus to the project going forward and shift the mentality -- gradually, one hopes -- from "get it absolutely right" to "get it done".</p>
<p>In the past, I've felt that the Perl 6 effort has been a distraction for Perl 5.  On reflection, I've decided that the release of <strong>Rakudo Star is good for Perl 5 because it makes it easier for people to assess the relative status of both</strong>. Now, more than ever, it's clear that Perl 6 is not going to sweep Perl 5 away any time soon, but people who <em>are</em> interested in the comparison can watch both evolve and decide where they want to invest their time.  </p>
<p>It's also pretty clear that Perl 6 is not going to make substantial inroads against Python, Ruby, PHP and other dynamic languages any time soon, either.  <strong>If anyone was waiting for Perl 6 to rescue Perl, then they'll need to keep waiting.</strong></p>
<p>However, <strong>Rakudo Star will help demonstrate common strengths</strong> of the current incarnation of both Perl 5 and Perl 6 language development.</p>
<ul>
<li><strong>Timeboxed delivery</strong> -- both projects are now delivering regular, packaged development releases that users can unpack, install and explore to see how new features evolve and how it works with previously written code.</li>
<li><strong>Tests and a testing culture</strong> -- both Perl 5 and Perl 6 are backed by thousands of tests that help catch potential errors or behavior regressions</li>
<li><strong>CPAN</strong> -- Perl 5 already has it (and it's adding 1,000 distributions a month) and some of the early work by the Perl 6 community has been to start porting some of the more popular Perl 5 modules into Perl 6.</li>
<li><strong>Community</strong> -- there are dozens (or more) Perl conferences each year. These have often included talks on Perl 6 and this trend will likely continue.  While Perl 5 and Perl 6 are different languages, they share not only a common heritage but a common culture as well</li>
</ul>
<p>I suggest that people put the release of Rakudo Star in perspective.  It is not a game-changer, but it is still a big step forward.  Those who delivered it deserve kudos not brickbats, and I look forward to a next release that is even better.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dagolden.com/index.php/947/thoughts-on-perl-6-hype-and-backlash/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Why is Parrot afraid of Perl?</title>
		<link>http://www.dagolden.com/index.php/91/why-is-parrot-afraid-of-perl/</link>
		<comments>http://www.dagolden.com/index.php/91/why-is-parrot-afraid-of-perl/#comments</comments>
		<pubDate>Fri, 01 May 2009 03:04:08 +0000</pubDate>
		<dc:creator>dagolden</dc:creator>
				<category><![CDATA[parrot]]></category>
		<category><![CDATA[perl-programming]]></category>
		<category><![CDATA[ironman]]></category>

		<guid isPermaLink="false">http://www.dagolden.com/?p=91</guid>
		<description><![CDATA[Or -- provocative title aside -- why does Parrot want to move away from Perl in its build process? Yesterday, Jim Keenan asked me a question about a Windows bug in some Perl code used in Parrot configuration.  My suggestion was to use a function from IPC::Cmd instead, since IPC::Cmd is core in Perl 5.10 [...]]]></description>
			<content:encoded><![CDATA[<p>Or -- provocative title aside -- why does <a href="http://www.parrot.org/">Parrot</a> want to move away from Perl in its build process?</p>
<p>Yesterday, <a href="http://use.perl.org/~kid51/journal/">Jim Keenan</a> asked me a question about a Windows bug in some Perl code used in Parrot configuration.  My suggestion was to use a function from <a href="http://search.cpan.org/perldoc?IPC::Cmd">IPC::Cmd</a> instead, since IPC::Cmd is core in Perl 5.10 and thus already well-tested across a wide range of platforms.</p>
<p>In his reply, he mentioned that Parrot configuration targets Perl 5.8 with only core modules (except things distributed with the Parrot source) and he added this as well:</p>
<blockquote><p>And, in fact, the Parrot leadership has set the goal of getting every bit of Perl 5 code out of the Parrot distribution.  See, e.g., <a href="https://trac.parrot.org/parrot/ticket/619">https://trac.parrot.org/parrot/ticket/619</a></p></blockquote>
<p>I'm sure there's more to the issue, but as I don't follow Parrot discussions all that closely, my first reaction is that it seems unwise to me.<sup><a href="http://www.dagolden.com/index.php/91/why-is-parrot-afraid-of-perl/#footnote_0_91" id="identifier_0_91" class="footnote-link footnote-identifier-link" title="Unless the goal is to have Parrot completely bootstrap itself from existing Parrot binaries, which might actually be a decent thing.">1</a></sup></p>
<p>The advantage of Perl for configuration is that it's <em>already</em> portable -- so you can configure the same way on Windows as you would on Unix.  Take away Perl and then you're stuck with <a href="http://www.mingw.org/wiki/msys">MSYS</a> or <a href="http://www.cygwin.com/">cygwin</a>, or other <a href="http://gnuwin32.sourceforge.net/">ports of Unix tools</a> to Windows, none of which are as easy to use as, say, installing <a href="http://strawberryperl.com/">Strawberry Per</a>l.</p>
<p><a href="https://trac.parrot.org/parrot/ticket/619">That Parrot ticket</a> suggests using <a href="http://www.gnu.org/software/autoconf/">autoconf</a>.  Really?!?  Google for <a href="http://www.google.com/search?q=autoconf+windows">"autoconf windows"</a>.  Here's a example of what you get: <a href="http://joelhough.com/blog/2008/04/08/i-hate-autoconf/">I hate autoconf</a>.  Plus, you need Perl for autoconf anyway, so this approach layers a unix-y tool on top of Perl to build makefiles to build Parrot.  That's a lot of places for things to break across platforms.</p>
<p><strong>I'd rather just have Perl.</strong></p>
<p>In fact, I'll go further in my rant and point out that even <em>Perl</em> can't be automatically configured on Windows because it depends on shell scripts.  Instead, configurations are maintained and edited <em>by hand</em> in the Perl source, and anyone building on Windows has to hand edit them again  for any local customization.</p>
<p>I think that one of the reasons that Strawberry Perl has kept its momentum and frequent releases is that the build process got coded up into <a href="http://search.cpan.org/perldoc?Perl::Dist">Perl::Dist</a>, so that all the custom configuration needed to build a Windows Perl binary could be automated with Perl.</p>
<p>So, maybe as an "outsider" to the Parrot project my opinion doesn't count for much, but I think if they really want to be more portable and more automated, they should be looking to use more Perl, not less.</p>
<ol class="footnotes"><li id="footnote_0_91" class="footnote">Unless the goal is to have Parrot completely bootstrap itself from existing Parrot binaries, which might actually be a decent thing.</li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.dagolden.com/index.php/91/why-is-parrot-afraid-of-perl/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
