<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0" xmlns:blogChannel="http://backend.userland.com/blogChannelModule">

<channel>
<title><![CDATA[Perl 6: benchmarks]]></title>
<link>http://www.perlfoundation.org/perl6/index.cgi?action=weblog_display;category=benchmarks</link>
<description></description>
<pubDate>Sun, 28 Feb 2010 01:02:45 -0000</pubDate>
<webMaster>synedra@gmail.com</webMaster>
<generator>Socialtext Workspace v2.14.7.2</generator>

<item>
<title><![CDATA[Fibonacci Sequence]]></title>
<link>http://www.perlfoundation.org/perl6/index.cgi?fibonacci_sequence</link>
<description><![CDATA[<div class="wiki">
<h2 id="description">Description</h2>
<p>
&quot;Originally designed as an exercise in addition for students, the Fibonacci Sequence has some really interesting mathematical properties. While completely ignoring its unexpected niftiness (and explicit formula), this miraculous sequence is still used as busy work for poor creatures.&quot;</p>
<h2 id="solutions">Solutions</h2>
<ul>
<li><a target="_blank" title="(external link)" href="http://svn.pugscode.org/pugs//examples/algorithms/fibonacci_memoization.pl">using memoization<!-- wiki-renamed-hyperlink "using memoization"<http://svn.pugscode.org/pugs//examples/algorithms/fibonacci_memoization.pl> --></a> (pugs svn)</li>
<li><a target="_blank" title="(external link)" href="http://svn.pugscode.org/pugs//examples/algorithms/fibonacci_tail_call.pl">using tail call<!-- wiki-renamed-hyperlink "using tail call"<http://svn.pugscode.org/pugs//examples/algorithms/fibonacci_tail_call.pl> --></a> (pugs svn)</li>
</ul>
<h2 id="status_with_current_release_of_perl_6_parrot">Status with current release of perl 6 / parrot</h2>
<ul><ul><ul>
<li>TODO ***</li>
</ul></ul></ul>
<h2 id="benchmarks">Benchmarks</h2>
<ul><ul><ul>
<li>TODO ***</li>
</ul></ul></ul>
<h2 id="comparisons_against_perl_5_etc">Comparisons against Perl 5, etc</h2>
<ul>
<li>Perl : <a target="_blank" title="(external link)" href="http://www.ddj.com/184404580">Brian d Foy using it to profile (DDJ)<!-- wiki-renamed-hyperlink "Brian d Foy using it to profile (DDJ)"<http://www.ddj.com/184404580> --></a></li>
<li>Python : <a target="_blank" title="(external link)" href="http://www.daniweb.com/code/snippet404.html">example 1<!-- wiki-renamed-hyperlink "example 1"<http://www.daniweb.com/code/snippet404.html> --></a>, <a target="_blank" title="(external link)" href="http://davidf.sjsoft.com/mirrors/mcmillan-inc/tutorial2.html">examples 2<!-- wiki-renamed-hyperlink "examples 2"<http://davidf.sjsoft.com/mirrors/mcmillan=-inc/tutorial2.html> --></a></li>
<li>Ruby : <a target="_blank" title="(external link)" href="http://en.literateprograms.org/Fibonacci_numbers_%28Ruby%29">Example at Literate Programming<!-- wiki-renamed-hyperlink "Example at Literate Programming"<http://en.literateprograms.org/Fibonacci_numbers_%28Ruby%29> --></a></li>
</ul>
<h2 id="references">References</h2>
<ul>
<li><a target="_blank" title="(external link)" href="http://mathworld.wolfram.com/FibonacciNumber.html">Wolfram on Fibonacci Numbers<!-- wiki-renamed-hyperlink "Wolfram on Fibonacci Numbers"<http://mathworld.wolfram.com/FibonacciNumber.html> --></a></li>
<li><a target="_blank" title="(external link)" href="http://functions.wolfram.com/IntegerFunctions/Fibonacci/">Wolfram on Fibonacci Function<!-- wiki-renamed-hyperlink "Wolfram on Fibonacci Function"<http://functions.wolfram.com/IntegerFunctions/Fibonacci/> --></a></li>
</ul>
</div>
]]></description>
<author>Herbert Breunung</author>
<guid isPermaLink="true">http://www.perlfoundation.org/perl6/index.cgi?fibonacci_sequence</guid>
<pubDate>Sun, 28 Feb 2010 01:02:45 -0000</pubDate>
</item>

<item>
<title><![CDATA[What can I do with Perl 6 today?]]></title>
<link>http://www.perlfoundation.org/perl6/index.cgi?what_can_i_do_with_perl_6_today</link>
<description><![CDATA[<div class="wiki">
<div class="nlw_phrase"><table class='toc'><tr><td><div class="wiki">
<h3 id="contents">Contents: []</h3>
<ul>
<li><span class="nlw_phrase"><a title="section link" href="#what_can_you_do_with_perl_6_now_today_this_minute">What can YOU do with Perl 6 Now, Today, This minute?</a><!-- wiki: {link: [] What can YOU do with Perl 6 Now, Today, This minute?} --></span></li>

<ul>
<li><span class="nlw_phrase"><a title="section link" href="#introduction">Introduction</a><!-- wiki: {link: [] Introduction} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#run_some_code">Run Some Code</a><!-- wiki: {link: [] Run Some Code} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#solve_mathematical_computer_science_problems_and_exercises">Solve Mathematical / Computer Science Problems and Exercises</a><!-- wiki: {link: [] Solve Mathematical / Computer Science Problems and Exercises} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#file_directory_access">File/Directory Access</a><!-- wiki: {link: [] File/Directory Access} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#networking_ipc">Networking / IPC</a><!-- wiki: {link: [] Networking / IPC} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#database_access">Database Access</a><!-- wiki: {link: [] Database Access} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#parsing">Parsing</a><!-- wiki: {link: [] Parsing} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#graphics">Graphics</a><!-- wiki: {link: [] Graphics} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#user_interface">User Interface</a><!-- wiki: {link: [] User Interface} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#web_applications">Web Applications</a><!-- wiki: {link: [] Web Applications} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#use_some_perl_5_modules_from_perl_6">Use (Some) Perl 5 Modules from Perl 6</a><!-- wiki: {link: [] Use (Some) Perl 5 Modules from Perl 6} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#use_other_languages_from_perl_6">Use Other Languages from Perl 6</a><!-- wiki: {link: [] Use Other Languages from Perl 6} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="#see_also">See Also</a><!-- wiki: {link: [] See Also} --></span></li>
</ul></ul>
</div>
</td></tr></table><!-- wiki: {toc: } --></div><br /><br /><h1 id="what_can_you_do_with_perl_6_now_today_this_minute">What can YOU do with Perl 6 Now, Today, This minute?</h1>
<h2 id="introduction">Introduction</h2>
<ul>
<li>Add tasks, exercises, and projects that can be done today with perl 6.</li>

<ul>
<li>Include brief explanations:</li>

<ul>
<li>How to run?</li>
<li>What is required?</li>
</ul>
<li>Cite benchmarks (e.g. vs Perl 5, Python, Ruby, etc.), if possible.</li>
</ul>
<li>Each item should link to a page that gives a summary of its status (possible, buggy, depends on X) and includes or links to examples, benchmarks, articles, code, etc.</li>
<li>Some places to check for potential content ideas:</li>

<ul>
<li><a href="http://www.perlfoundation.org/perl6/index.cgi?perl_6_rss_news_feeds_and_headlines" title="(40 months)  toc see also recent informations in this wiki [Whats_up ]. Planet Perl 6 fetchrss http planetsix.pe...">Perl 6 RSS News Feeds and Headlines</a></li>
<li><span class="nlw_phrase"><a title="section link" href="http://www.perlfoundation.org/perl6/index.cgi?Perl%206%20Articles%20and%20Presentations#list_of_articles_and_presentations_most_recent_first">Perl 6 Articles and Presentations (List of articles and presentations, most recent first)</a><!-- wiki: {link: [Perl 6 Articles and Presentations] List of articles and presentations, most recent first} --></span></li>
</ul></ul>
<h2 id="run_some_code">Run Some Code</h2>
<ul>
<li>Get and make Rakudo:</li>

<ul>
<li>Get and Make parrot</li>

<ul>
<li><tt>svn co https://svn.perl.org/parrot/trunk parrot</tt></li>
<li><tt>perl ./Configure.pl</tt></li>
<li><tt>make</tt></li>
</ul>
<li>use <tt>parrot languages/perl6/perl6.pbc some_code.p6</tt></li>
<li>Try <tt>make perl6</tt> and then you can use <tt>./perl6 some_code.p6</tt></li>
</ul>
<li>Download some <a target="_blank" title="(external link)" href="http://github.com/eric256/perl6-examples/tree/master">perl6 examples<!-- wiki-renamed-hyperlink "perl6 examples"<http://github.com/eric256/perl6=-examples/tree/master> --></a> (from the github perl6-examples repo)</li>

<ul>
<li><tt>git clone git://github.com/eric256/perl6-examples.git</tt></li>
</ul>
<li>Download more <a target="_blank" title="(external link)" href="http://svn.pugscode.org/pugs/examples/">perl6 examples<!-- wiki-renamed-hyperlink "perl6 examples"<http://svn.pugscode.org/pugs/examples/> --></a> (from the pugs repo)</li>

<ul>
<li><tt>svn co http://svn.pugscode.org/pugs/examples/</tt></li>
</ul></ul>
<h2 id="solve_mathematical_computer_science_problems_and_exercises">Solve Mathematical / Computer Science Problems and Exercises</h2>
<ul>
<li><a href="http://www.perlfoundation.org/perl6/index.cgi?tower_of_hanoi" title="(66 months)  Description Invented by the French mathematician Édouard Lucas in 1883, this is a mathematical game...">Tower of Hanoi</a></li>
<li><a href="http://www.perlfoundation.org/perl6/index.cgi?hilberts_space_filling_curve" title="(66 months)  Description An elegant and efficient plane filling curve http mathworld.wolfram.com Plane-FillingCu...">Hilberts Space Filling Curve</a></li>
<li><a href="http://www.perlfoundation.org/perl6/index.cgi?fibonacci_sequence" title="(40 months)  Description Originally designed as an exercise in addition for students, the Fibonacci Sequence has...">Fibonacci Sequence</a></li>
<li>Bubble Sort</li>
<li>Quick Sort</li>
<li>Hashing</li>
</ul>
<h2 id="file_directory_access">File/Directory Access</h2>
<ul>
<li>Random Access</li>
<li>Streams</li>
<li>Find</li>
<li>Rsynch</li>
</ul>
<h2 id="networking_ipc">Networking / IPC</h2>
<ul>
<li>CGI (see November wiki below)</li>
<li>NMS scripts</li>
<li>Servers</li>
<li>Forking</li>
<li>IPC</li>
<li><a href="http://www.perlfoundation.org/perl6/index.cgi?apache_modules" title="(64 months)  References http www.smashing.org jeff node 25 http www.smashing.org talks future_of_mod_perl.pdf ">Apache Modules</a></li>
</ul>
<h2 id="database_access">Database Access</h2>
<ul>
<li>DBI (under development) (but you <strong>can</strong> <a target="_blank" title="(external link)" href="http://perlbuzz.com/2008/12/database-access-in-perl-6-is-coming-along-nicely.html">do something today<!-- wiki-renamed-hyperlink "do something today"<http://perlbuzz.com/2008/12/database=-access=-in=-perl=-6=-is=-coming=-along=-nicely.html> --></a>)</li>
</ul>
<h2 id="parsing">Parsing</h2>
<ul>
<li>ini files (simple task, just do it!)</li>
<li>Apache logs</li>
<li>Aeronautical / Weather Data Feeds</li>
<li>&nbsp;</li>
</ul>
<h2 id="graphics">Graphics</h2>
<ul>
<li>Pie chart</li>
<li>Fractals</li>
<li>Render Vector / Bitmap Images</li>
<li>Ascii Art</li>
<li>3D Graphics</li>
</ul>
<h2 id="user_interface">User Interface</h2>
<ul>
<li>WIMP GUI</li>
<li>Curses</li>
<li>Command line arguments/options</li>
</ul>
<h2 id="web_applications">Web Applications</h2>
<ul>
<li><a href="http://www.perlfoundation.org/perl6/index.cgi?november" title="(40 months)  toc About November November is ...a proof-of-concept of what [Rakudo] Perl 6 can do today. ...relea...">November</a> - wiki engine (simple CGI, HTML::Template and URI ports live in repo)</li>
</ul>
<h2 id="use_some_perl_5_modules_from_perl_6">Use (Some) Perl 5 Modules from Perl 6</h2>
<ul>
<li><a href="http://www.perlfoundation.org/perl6/index.cgi?using_perl_5_embedding" title="(60 months) Perl 5 embedding is enabled by default in Pugs. This allows to you use some Perl 5 modules from Perl...">Using Perl 5 Embedding</a></li>
</ul>
<h2 id="use_other_languages_from_perl_6">Use Other Languages from Perl 6</h2>
<ul>
<li><a target="_blank" title="(external link)" href="http://use.perl.org/%7Epmichaud/journal/38022">Rakudo supports inline PIR<!-- wiki-renamed-hyperlink "Rakudo supports inline PIR"<http://use.perl.org/%7Epmichaud/journal/38022> --></a> (Pimchaud blog post)</li>
</ul>
<h2 id="see_also">See Also</h2>
<ul>
<li>The (original prolog) <a target="_blank" title="(external link)" href="https://staff.hti.bfh.ch/hew1/informatik3/prolog/p-99/">99 Problems page<!-- wiki-renamed-hyperlink "99 Problems page"<https://staff.hti.bfh.ch/hew1/informatik3/prolog/p=-99/> --></a> (and <a target="_blank" title="(external link)" href="http://www.oreillynet.com/onlamp/blog/2006/12/99_problems_in_perl_6.html">ovid's solution to one using perl 6<!-- wiki-renamed-hyperlink "ovid's solution to one using perl 6"<http://www.oreillynet.com/onlamp/blog/2006/12/99_problems_in_perl_6.html> --></a>)</li>
<li>Perl 6 blogs at <a target="_blank" title="(external link)" href="http://planetsix.perl.org/">Planet Perl Six<!-- wiki-renamed-hyperlink "Planet Perl Six"<http://planetsix.perl.org/> --></a>.</li>
<li>Perl 6 CPAN : <a href="http://www.perlfoundation.org/perl6/index.cgi?cpan6" title="(61 months)  toc CPAN6 CPAN6 is a follow-up study for CPAN http www.cpan.org , Perl5 s module archive, as a way ...">CPAN6</a>.</li>
<li><a target="_blank" title="(external link)" href="http://svn.perl.org/parrot/trunk/languages/perl6/ROADMAP">Rakudo (Perl6 on Parrot) Roadmap<!-- wiki-renamed-hyperlink "Rakudo (Perl6 on Parrot) Roadmap"<http://svn.perl.org/parrot/trunk/languages/perl6/ROADMAP> --></a></li>
</ul>
</div>
]]></description>
<author>Herbert Breunung</author>
<guid isPermaLink="true">http://www.perlfoundation.org/perl6/index.cgi?what_can_i_do_with_perl_6_today</guid>
<pubDate>Sun, 31 Jan 2010 13:42:36 -0000</pubDate>
</item>

<item>
<title><![CDATA[Tower of Hanoi]]></title>
<link>http://www.perlfoundation.org/perl6/index.cgi?tower_of_hanoi</link>
<description><![CDATA[<div class="wiki">
<h2 id="description">Description</h2>
<p>
Invented by the French mathematician Édouard Lucas in 1883, this is a mathematical game/puzzle about moving a set of disks between a set of pegs, limited by the following rules :</p>
<ul>
<li>Only one disk may be moved at a time.</li>
<li>Each move consists of taking the upper disk from one of the pegs and sliding it onto another peg, on top of the other disks that may already be present on that peg.</li>
<li>No disk may be placed on top of a smaller disk.</li>
</ul>
<h2 id="solutions">Solutions</h2>
<p>
<a target="_blank" title="(external link)" href="http://svn.pugscode.org/pugs/examples/algorithms/hanoi.pl">http://svn.pugscode.org/pugs/examples/algorithms/hanoi.pl</a></p>
<h2 id="status_with_current_release_of_perl_6_parrot">Status with current release of perl 6 / parrot</h2>
<ul>
<li>Parrot 0.5.1 December 2007 : compiler errors - subs and argv not implemented</li>
<li>Parrot SVN Revision 24336 20 December 2007 : works without // and argv syntax (<a target="_blank" title="(external link)" href="http://nopaste.snit.ch:8001/11939)">http://nopaste.snit.ch:8001/11939)</a></li>
<li>Parrot SVN Revision 24478 3 January 2008 : works as is</li>
<li>Pugs SVN revision 18224 : works as is</li>
</ul>
<h2 id="benchmarks">Benchmarks</h2>
<p>
1000 iterations with 6 disks - skip output ( or comment on output to file, etc : <a target="_blank" title="(external link)" href="http://sial.org/pbot/29516">http://sial.org/pbot/29516</a> thanks to Stephen Weeks / Tene on #perl6 )</p>
<ul>
<li>Pugs revision 18224 ( 1ghz, 640M ram )</li>

<ul>
<li>(100 iterations with 1 say per iteration) : real 0m22.611s, user 0m22.384s, sys 0m0.101s</li>
</ul>
<li>Parrot revision 24336 ( 1.6ghz, 2G ram )</li>

<ul>
<li>(1000 iterations no printing ) : real 0m3.577s, user 0m3.119s, 0m0.452s</li>
<li>(100 iterations with 1 say per iteration) : real 0m0.841s, user 0m0.694s, sys 0m0.141s</li>
</ul></ul>
<h2 id="comparisons_against_perl_5_etc">Comparisons against Perl 5, etc</h2>
<ul>
<li><a target="_blank" title="(external link)" href="http://hop.perl.plover.com/Examples/ALL/hanoi">http://hop.perl.plover.com/Examples/ALL/hanoi</a> # MJD's simple perl solution to Hanoi (further examples and detail in the Higher Order Perl book)</li>
<li><a target="_blank" title="(external link)" href="http://www.kernelthread.com/hanoi/html/rb.html">http://www.kernelthread.com/hanoi/html/rb.html</a> # simple ruby program to solve hanoi from command line</li>
<li><a target="_blank" title="(external link)" href="http://www.ruby-forum.com/topic/107700">http://www.ruby-forum.com/topic/107700</a> # object oriented ruby class to solve hanoi from command line and discussion thereof</li>
<li><a target="_blank" title="(external link)" href="http://codegolf.com/tower-of-hanoi">http://codegolf.com/tower-of-hanoi</a> # golfing tower of hanoi</li>
<li><a target="_blank" title="(external link)" href="http://www.kernelthread.com/hanoi/html/py.html">http://www.kernelthread.com/hanoi/html/py.html</a> # simple python solution</li>
</ul>
<h2 id="references">References</h2>
<ul>
<li><a target="_blank" title="(external link)" href="http://mathworld.wolfram.com/TowerofHanoi.html">http://mathworld.wolfram.com/TowerofHanoi.html</a></li>
<li><a target="_blank" title="(external link)" href="http://en.wikipedia.org/wiki/Tower_of_Hanoi">http://en.wikipedia.org/wiki/Tower_of_Hanoi</a></li>
</ul>
</div>
]]></description>
<author>Aaron TEEJAY Trevena</author>
<guid isPermaLink="true">http://www.perlfoundation.org/perl6/index.cgi?tower_of_hanoi</guid>
<pubDate>Thu, 03 Jan 2008 10:31:25 -0000</pubDate>
</item>

</channel>
</rss>