Ðо вообще еще более удивительно делать выбор на оÑновании производительноÑти ;)<div><br></div><div>Ð”Ð»Ñ Ð¼ÐµÐ½Ñ Ð¾Ñновным критерием ÑвлÑетÑÑ Ñ‡Ð¸Ñ‚Ð°ÐµÐ¼Ð¾Ñть кода по прошеÑтвии полугода.</div><div><br></div><div>ЕÑли код читаем, значит, удобен в поддержке. Ðто перекрывает большинÑтво иных преимущеÑтв.<br>
<br><div class="gmail_quote">8 Ð¸ÑŽÐ½Ñ 2011 г. 19:44 пользователь Akzhan Abdulin <span dir="ltr"><<a href="mailto:akzhan.abdulin@gmail.com">akzhan.abdulin@gmail.com</a>></span> напиÑал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
List::Util::XS вроде как находитÑÑ Ð² том же пакете, еÑли банально глÑнуть на ÑоÑтав rpm, например.<div>Так что да, Ñкорее вÑего, на большинÑтве машин иÑпользуетÑÑ Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° Си.<br><br><div class="gmail_quote">8 Ð¸ÑŽÐ½Ñ 2011 г. 19:33 пользователь Aleksander Gorohovski <span dir="ltr"><<a href="mailto:angel@feht.dgtu.donetsk.ua" target="_blank">angel@feht.dgtu.donetsk.ua</a>></span> напиÑал:<div>
<div></div><div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div></div><div>On Wed, 08 Jun 2011 16:02:29 +0300, Ruslan Zakirov wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
2011/6/8 Aleksander Gorohovski <<a href="mailto:angel@feht.dgtu.donetsk.ua" target="_blank">angel@feht.dgtu.donetsk.ua</a>>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
comparing array sum with 10 element(s)<br>
      Rate for loop sum util<br>
for loop  627562/s    --   -83%<br>
sum util 3594095/s   473%    --<br>
<br>
comparing array sum with 100 element(s)<br>
      Rate for loop sum util<br>
for loop  96701/s    --   -92%<br>
sum util 1226353/s   1168%    --<br>
</blockquote>
<br>
Премного благодарен.<br>
:)<br>
ПодÑкажите, а Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ чего такую<br>
Ñравнительную ÑтатиÑтику можно получить / воÑпроизвеÑти?<br>
</blockquote>
<br>
use Benchmark qw/cmpthese/;<br>
<br>
use List::Util qw(sum);<br>
<br>
foreach my $up_to (1, 3, 10, 100) {<br>
  print "comparing array sum with $up_to element(s)\n";<br>
<br>
  my @a = (1 .. $up_to);<br>
  cmpthese(<br>
    -3,<br>
    {<br>
      'for loop' => sub { my $s = 0; $s+=$_ for @a; return $s },<br>
      'sum util' => sub { return sum(0, @a ) },<br>
    }<br>
  );<br>
}<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
и что означают отрицательные % ? --- Ñто ÑчитаетÑÑ Ð¿Ð»Ð¾Ñ…Ð¾/хорошо?<br>
</blockquote>
<br>
-75% - Рмедленне B на 75%. То еÑть A = B*(100-75)/100. СоответÑтвенно<br>
B быÑтрее Рна 300% - B = A*(300/100+1), где A и B ÑкороÑти<br>
алгоритмов.<br>
</blockquote>
<br></div></div>
Премного благодарен.<br>
<br>
Удивительный раÑклад :)<br>
ИнтереÑно за Ñчёт чего ж<br>
получаетÑÑ Ñ‚Ð°ÐºÐ¾Ð¹ прироÑÑ‚ производительноÑти?<br>
<br>
Ðеужто в List::Util подпрограммы вÑтроены на C<div><div></div><div><br>
?<br>
-- <br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
</div></div></blockquote></div></div></div><br></div>
</blockquote></div><br></div>