<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Jaros&#322;aw Zabie&#322;&#322;o - BLOG: Python vs. Ruby 1.9 YARV. Cz. II</title>
    <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>moje notatki, linki, komentarze</description>
    <item>
      <title>Python vs. Ruby 1.9 YARV. Cz. II</title>
      <description>&lt;p&gt;Z &lt;a href="http://blog.zabiello.com/articles/2007/01/01/ruby-1.9-yarv"&gt;wcze&#347;niejszych test&#243;w&lt;/a&gt; wynika&#322;o &#380;e Ruby 1.9 (wykorzystuj&#261;cy wirtualn&#261; maszyn&#281; &lt;span class="caps"&gt;YARV&lt;/span&gt;) jest szybszy od Pythona.  Aby zwolennicy Rubiego zbyt si&#281; nie cieszyli, przygotowa&#322;em test na wywo&#322;ania rekurencyjne. Najci&#281;&#380;sz&#261; jest tu funkcja rekurencyjna. D&#322;ugo&#347;&#263; 7 znak&#243;w daje prawie 900 tys. wywo&#322;a&#324; rekurencyjnych i w miar&#281; sensowne czasy aby co&#347; zobaczy&#263;. Postanowi&#322;em j&#261; wzi&#261;&#263; na rozk&#322;ad. Tym razem z 10 pr&#243;b brany jest najlepszy (najkr&#243;tszy) wynik.&lt;/p&gt;


	&lt;h3&gt;Python:&lt;/h3&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;try&lt;/span&gt;&lt;span class="punct"&gt;:&lt;/span&gt;
  &lt;span class="ident"&gt;import&lt;/span&gt; &lt;span class="ident"&gt;psyco&lt;/span&gt;
  &lt;span class="ident"&gt;psyco&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;all&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt;
&lt;span class="ident"&gt;except&lt;/span&gt;&lt;span class="punct"&gt;:&lt;/span&gt;
  &lt;span class="ident"&gt;pass&lt;/span&gt;

&lt;span class="ident"&gt;from&lt;/span&gt; &lt;span class="ident"&gt;time&lt;/span&gt; &lt;span class="ident"&gt;import&lt;/span&gt; &lt;span class="ident"&gt;time&lt;/span&gt;
&lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;wariancje&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;n&lt;/span&gt;&lt;span class="punct"&gt;):&lt;/span&gt;
    &lt;span class="keyword"&gt;if&lt;/span&gt; &lt;span class="ident"&gt;n&lt;/span&gt;&lt;span class="punct"&gt;==&lt;/span&gt;&lt;span class="number"&gt;0&lt;/span&gt;&lt;span class="punct"&gt;:&lt;/span&gt;
      &lt;span class="keyword"&gt;yield&lt;/span&gt; &lt;span class="punct"&gt;[]&lt;/span&gt;
    &lt;span class="keyword"&gt;else&lt;/span&gt;&lt;span class="punct"&gt;:&lt;/span&gt;
        &lt;span class="keyword"&gt;for&lt;/span&gt; &lt;span class="ident"&gt;i&lt;/span&gt; &lt;span class="keyword"&gt;in&lt;/span&gt; &lt;span class="ident"&gt;xrange&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;len&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;)):&lt;/span&gt;
            &lt;span class="keyword"&gt;for&lt;/span&gt; &lt;span class="ident"&gt;c&lt;/span&gt; &lt;span class="keyword"&gt;in&lt;/span&gt; &lt;span class="ident"&gt;wariancje&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;n&lt;/span&gt;&lt;span class="punct"&gt;-&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;):&lt;/span&gt;
                &lt;span class="keyword"&gt;yield&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="ident"&gt;i&lt;/span&gt;&lt;span class="punct"&gt;]]&lt;/span&gt; &lt;span class="punct"&gt;+&lt;/span&gt; &lt;span class="ident"&gt;c&lt;/span&gt;
&lt;span class="ident"&gt;s&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;abcdefg&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="ident"&gt;nelem&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;len&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
&lt;span class="ident"&gt;i&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="number"&gt;0&lt;/span&gt;
&lt;span class="ident"&gt;results&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;[]&lt;/span&gt;
&lt;span class="keyword"&gt;for&lt;/span&gt; &lt;span class="ident"&gt;unused&lt;/span&gt; &lt;span class="keyword"&gt;in&lt;/span&gt; &lt;span class="ident"&gt;range&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;10&lt;/span&gt;&lt;span class="punct"&gt;):&lt;/span&gt;
  &lt;span class="ident"&gt;t&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;time&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt;
  &lt;span class="keyword"&gt;for&lt;/span&gt; &lt;span class="ident"&gt;s&lt;/span&gt; &lt;span class="keyword"&gt;in&lt;/span&gt; &lt;span class="ident"&gt;wariancje&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;nelem&lt;/span&gt;&lt;span class="punct"&gt;):&lt;/span&gt;
    &lt;span class="ident"&gt;i&lt;/span&gt; &lt;span class="punct"&gt;+=&lt;/span&gt; &lt;span class="number"&gt;1&lt;/span&gt;
  &lt;span class="ident"&gt;tmp&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;time&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt; &lt;span class="punct"&gt;-&lt;/span&gt; &lt;span class="ident"&gt;t&lt;/span&gt;
  &lt;span class="ident"&gt;results&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;append&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;tmp&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
  &lt;span class="ident"&gt;print&lt;/span&gt; &lt;span class="ident"&gt;tmp&lt;/span&gt;
&lt;span class="ident"&gt;print&lt;/span&gt; &lt;span class="ident"&gt;min&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;results&lt;/span&gt;&lt;span class="punct"&gt;),&lt;/span&gt; &lt;span class="ident"&gt;max&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;results&lt;/span&gt;&lt;span class="punct"&gt;),&lt;/span&gt; &lt;span class="ident"&gt;nelem&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;i&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;h3&gt;Ruby&lt;/h3&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;wariancje&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;n&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
  &lt;span class="keyword"&gt;if&lt;/span&gt; &lt;span class="ident"&gt;n&lt;/span&gt; &lt;span class="punct"&gt;==&lt;/span&gt; &lt;span class="number"&gt;0&lt;/span&gt;
    &lt;span class="keyword"&gt;yield&lt;/span&gt; &lt;span class="punct"&gt;[]&lt;/span&gt;
  &lt;span class="keyword"&gt;else&lt;/span&gt;
    &lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;size&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;times&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;i&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt;
      &lt;span class="ident"&gt;wariancje&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;n&lt;/span&gt;&lt;span class="punct"&gt;-&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;c&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt; &lt;span class="keyword"&gt;yield&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="ident"&gt;i&lt;/span&gt;&lt;span class="punct"&gt;]]&lt;/span&gt; &lt;span class="punct"&gt;+&lt;/span&gt; &lt;span class="ident"&gt;c&lt;/span&gt; &lt;span class="punct"&gt;}&lt;/span&gt;
    &lt;span class="keyword"&gt;end&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="ident"&gt;t&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;now&lt;/span&gt;
&lt;span class="ident"&gt;s&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;abcdefg&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="ident"&gt;size&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;size&lt;/span&gt;
&lt;span class="ident"&gt;i&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="number"&gt;0&lt;/span&gt;
&lt;span class="ident"&gt;results&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;[]&lt;/span&gt;
&lt;span class="number"&gt;10&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;times&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt;
  &lt;span class="ident"&gt;t&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;now&lt;/span&gt;
  &lt;span class="ident"&gt;wariancje&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;s&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;size&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt;
    &lt;span class="ident"&gt;i&lt;/span&gt; &lt;span class="punct"&gt;+=&lt;/span&gt; &lt;span class="number"&gt;1&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
  &lt;span class="ident"&gt;tmp&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;now&lt;/span&gt; &lt;span class="punct"&gt;-&lt;/span&gt; &lt;span class="ident"&gt;t&lt;/span&gt;
  &lt;span class="ident"&gt;results&lt;/span&gt; &lt;span class="punct"&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class="ident"&gt;tmp&lt;/span&gt;
  &lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="ident"&gt;tmp&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;&lt;span class="escape"&gt;\n&lt;/span&gt;&lt;span class="expr"&gt;#{results.min}&lt;/span&gt;, &lt;span class="expr"&gt;#{results.max}&lt;/span&gt;, &lt;span class="expr"&gt;#{size}&lt;/span&gt;, &lt;span class="expr"&gt;#{i}&lt;/span&gt;&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;h3&gt;Rezultat:&lt;/h3&gt;


	&lt;ol&gt;
	&lt;li&gt;&lt;strong&gt;Python 2.5&lt;/strong&gt;: 3.86356806755 s.&lt;/li&gt;
		&lt;li&gt;Python 2.4  4.09678792953 s.&lt;/li&gt;
		&lt;li&gt;Ruby 1.9:   6.418052 s.&lt;/li&gt;
		&lt;li&gt;Ruby 1.8.5: 8.000223 s.&lt;/li&gt;
	&lt;/ol&gt;


	&lt;p&gt;Tym razem Python nie da&#322; szans Rubiemu. Jest od niego wyra&#378;nie szybszy. Jednak na obron&#281; mo&#380;na powiedzie&#263; &#380;e &lt;span class="caps"&gt;YARV&lt;/span&gt; nie jest tu jeszcze zbyt zoptymalizowany. Wiele opcji optymalizacyjnych ma po prostu wy&#322;&#261;czonych, Ruby 1.9 i &lt;span class="caps"&gt;YARV&lt;/span&gt; to na razie kod eksperymentalny. Na razie wi&#281;c dominacja wydajno&#347;ciowa Pythona jest niepodwa&#380;alna.&lt;/p&gt;</description>
      <pubDate>Sat, 06 Jan 2007 18:44:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:b2736448-f97e-4bd9-9824-e2899862a1da</guid>
      <author>Jaros&#322;aw Zabie&#322;&#322;o</author>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii</link>
      <category>python</category>
      <category>ruby</category>
      <category>yarv</category>
      <category>benchmark</category>
    </item>
    <item>
      <title>"Python vs. Ruby 1.9 YARV. Cz. II" by marcus</title>
      <description>&lt;p&gt;zgadza si&#281; sprawdzi&#322;em  z jruby1.1 i czasy  niemal identyczne z pythonem 2.5 (setne r&#243;&#380;nice)&lt;/p&gt;</description>
      <pubDate>Wed, 09 Jan 2008 15:01:42 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:b4470745-6357-4a31-8f22-2874ee475857</guid>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii#comment-1361</link>
    </item>
    <item>
      <title>"Python vs. Ruby 1.9 YARV. Cz. II" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;JRuby 1.1 jest du&#380;o szybszy od 1.0. I to powinno jeszcze troch&#281; si&#281; powi&#281;kszy&#263; bo jeszcze nie ma finalnej wersji. Wersja 1.0 nie by&#322;a optymalizowana na wydajno&#347;&#263;.&lt;/p&gt;</description>
      <pubDate>Wed, 09 Jan 2008 10:58:44 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:a309124c-4ad5-49f0-8162-981d0c0ad85d</guid>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii#comment-1358</link>
    </item>
    <item>
      <title>"Python vs. Ruby 1.9 YARV. Cz. II" by marcus</title>
      <description>&lt;p&gt;spr&#243;bowa&#322;em twoich opcji i z pewno&#347;ci&#261; dzia&#322;a&#322;o szybciej ni&#380; samo jruby, ale otrzyma&#322;em czasy 59-60 s (python 8s.), wi&#281;c jak to wyt&#322;umaczysz ?  testowa&#322;em na jruby1.0 czy&#380;by a&#380; tak podkr&#281;cili obecnie now&#261; wersj&#281; jruby?&lt;/p&gt;</description>
      <pubDate>Wed, 09 Jan 2008 10:47:04 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:b72c398a-2633-458b-b6b9-9212168f91bb</guid>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii#comment-1357</link>
    </item>
    <item>
      <title>"Python vs. Ruby 1.9 YARV. Cz. II" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;Zapu&#347;ci&#322;em ten sam kod na najnowszym (svn r5317) &lt;strong&gt;JRuby&lt;/strong&gt; z opcjami &lt;code&gt;-J-server -J-Djruby.compile.frameless=true&lt;/code&gt; i uzyska&#322;em  3.83 s. czyli taki jak najlepszy tu wynik Pythona. A to jeszcze nie wszystko. JRuby jest wci&#261;&#380; optymalizowany&amp;#8230;&lt;/p&gt;</description>
      <pubDate>Thu, 20 Dec 2007 22:01:20 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:250c11a1-571c-4256-950b-df81ab437c6e</guid>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii#comment-1311</link>
    </item>
    <item>
      <title>"Python vs. Ruby 1.9 YARV. Cz. II" by marcus</title>
      <description>&lt;p&gt;tw&#243;j algorytm pu&#347;ci&#322;em pod php i na mojej maszynie wysz&#322;y nast&#281;puj&#261;ce wyniki:&lt;/p&gt;


	&lt;p&gt;Python 2.5 &amp;#8211; 8 s.
Ruby 1.8.6 &amp;#8211; 29 s.
PHP 4 &amp;#8211; 22s.
PHP 5 &amp;#8211; 16 s.&lt;/p&gt;


	&lt;p&gt;nie testowa&#322;em jedynie dla Ruby 1.9, ale ju&#380; wida&#263;, &#380;e Ruby 1.8x to &#380;&#243;&#322;w..&lt;/p&gt;</description>
      <pubDate>Thu, 20 Dec 2007 12:05:15 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:316469cd-ea0a-4edc-b176-da36d28f8003</guid>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii#comment-1310</link>
    </item>
    <item>
      <title>"Python vs. Ruby 1.9 YARV. Cz. II" by Jaros&#322;aw Zabie&#322;&#322;o</title>
      <description>&lt;p&gt;Nie s&#261;dz&#281; aby wi&#281;ksza ilo&#347;&#263; pr&#243;b cokolwiek zmieni&#322;a. Zreszt&#261; zr&#243;b sam testy. Python jest szybszy od Rubiego gdy w gr&#281; wchodz&#261; wywo&#322;ania metod. Wszyscy to przyznaj&#261;. YARV dobrze wr&#243;&#380;y Rubiemu na przysz&#322;o&#347;&#263;. Ale na razie je&#347;li we&#378;miemy pod uwag&#281; tylko wersje stabilne, to Python b&#281;dzie szybszy we wszystkich kategoriach.&lt;/p&gt;</description>
      <pubDate>Wed, 17 Jan 2007 00:55:24 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:6b92fcb0-98f8-4518-8359-d43001b682a0</guid>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii#comment-408</link>
    </item>
    <item>
      <title>"Python vs. Ruby 1.9 YARV. Cz. II" by wysek</title>
      <description>&lt;p&gt;Bez urazy, ale liczno&#347;&#263; pr&#243;by wynosz&#261;ca 10 to troch&#281; ma&#322;o, do tego brane najszybsze wyniki&amp;#8230;
Nie ma to nic wsp&#243;lnego ze statystyk&#261;&amp;#8230;&lt;/p&gt;</description>
      <pubDate>Tue, 16 Jan 2007 21:58:52 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:7d6a2c29-69db-44f6-9d8e-009586baa32b</guid>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii#comment-406</link>
    </item>
    <item>
      <title>"Python vs. Ruby 1.9 YARV. Cz. II" by ja</title>
      <description>&lt;p&gt;:P&lt;/p&gt;</description>
      <pubDate>Sun, 07 Jan 2007 02:33:53 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:896e3296-4ee8-4cf1-836e-ec499b689f8d</guid>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii#comment-391</link>
    </item>
    <item>
      <title>"Python vs. Ruby 1.9 YARV. Cz. II" by Seban</title>
      <description>&lt;p&gt;My&#347;l&#281;, &#380;e trzeba zwr&#243;ci&#263; wi&#281;ksz&#261; uwag&#281; na r&#243;&#380;nice mi&#281;dzy Ruby 1.8 a 1.9. Do Pythona daleko, ale wida&#263; post&#281;p, je&#347;li dalej si&#281; tak b&#281;dzie rozwija&#322; to b&#281;dzie dobrze&lt;/p&gt;</description>
      <pubDate>Sat, 06 Jan 2007 23:28:11 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:bd8a7328-16fd-4644-8bfe-4ebd5f188582</guid>
      <link>http://blog.zabiello.com/articles/2007/01/06/python-vs-ruby-1-9-yarv-cz-ii#comment-387</link>
    </item>
  </channel>
</rss>
