<div dir="ltr"><div><font color="#000000" face="Verdana, sans-serif"><span style="line-height:20.799999237060547px">Привет,</span></font></div><div><font color="#000000" face="Verdana, sans-serif"><span style="line-height:20.799999237060547px"><br>
</span></font></div><div><font color="#000000" face="Verdana, sans-serif"><span style="line-height:20.799999237060547px">Статья хорошая, но пример неправильный ;)</span></font></div><div><font color="#000000" face="Verdana, sans-serif"><span style="line-height:20.799999237060547px"><br>
</span></font></div><span style="color:rgb(0,0,0);font-family:Verdana,sans-serif;font-size:13px;line-height:20.799999237060547px">Ниже пример правильной программы с прототипами Perl:</span><br style="color:rgb(0,0,0);font-family:Verdana,sans-serif;font-size:13px;line-height:20.799999237060547px">
<pre style="margin-top:0px;margin-bottom:0px;padding:0px;border:0px;font-size:13px;vertical-align:baseline;outline:0px;word-break:break-all;color:rgb(0,0,0);line-height:20.799999237060547px"><code class="" style="margin:0px;padding:1px 4px;border:1px solid rgb(225,225,232);font-size:12px;vertical-align:baseline;outline:0px;background-color:rgb(247,247,249);display:block;white-space:pre-wrap;font-family:Menlo,Monaco,'Courier New',monospace;color:rgb(34,34,34);border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px"><span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(77,115,134)">use</span> strict;
<span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(77,115,134)">use</span> warnings;
<span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(77,115,134)">use</span> subs <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(77,115,134)">qw</span>/my_sub/;
<span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px"><span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(77,115,134)">sub</span> my_sub($$;</span><span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">$)</span> {
<span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(77,115,134)">my</span> (<span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">$v1</span>, <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">$v2</span>, <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">$v3</span>) = <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">@_</span>;
<span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">$v3</span> ||= <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(51,153,0)">'empty'</span>;
<span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(77,115,134)">printf</span>(<span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(51,153,0)">"v1: <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">%s</span>, v2: <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">%s</span>, v3: <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">%s</span>\n"</span>, <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">$v1</span>, <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">$v2</span>, <span class="" style="margin:0px;padding:0px;border:0px;vertical-align:baseline;outline:0px;color:rgb(150,142,91)">$v3</span>);
}
my_sub();
</code><div><br></div></pre></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-08-13 18:14 GMT+04:00 Andrey Asyakin <span dir="ltr"><<a href="mailto:asan999@gmail.com" target="_blank">asan999@gmail.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
Критика)<br>
<br>
В статье написано, что в Perl параметры в функцию передаются по
ссылке.<br>
Возможно правильней было бы написать, что элементы @_, $_[0], и т.д.
являются алиасами, то бишь магическими переменными. <br>
Ссылка это ссылка все же, это может ввести в заблуждение.<br>
<br>
Кстати, хмм, не знал до недавнего момента, что с элеменами @_можно
работать без разыменовывания:<br>
<br>
perl -E 'f({x => 42}); sub f { say $_[0]{x}, $_[0]->{x} }'<br>
<br>
<br>
<div>13.08.2014 16:30, Тимур Нозадзе пишет:<br>
</div>
<blockquote type="cite">
<div dir="ltr">Всем спасибо на добром слове. Мы старались.<br>
Но а как же конструктивная критика? ;)<br>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">13 августа 2014 г., 16:03 пользователь
Denis Fedoseev <span dir="ltr"><<a href="mailto:denis.fedoseev@gmail.com" target="_blank">denis.fedoseev@gmail.com</a>></span>
написал:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Отличная статья, все просто и понятно -
молодцы :)</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">
13 августа 2014 г., 15:51 пользователь Naim Sh <span dir="ltr"><<a href="mailto:shafiev@gmail.com" target="_blank">shafiev@gmail.com</a>></span>
написал:
<div>
<div><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Ребята,
вы молодцы . +1
<div><br>
<br>
On 08/13/2014 04:29 PM, Alexey Shrub wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Приветствую,<br>
<br>
да, вчера видал, бегло просмотрел, неплохо и
весьма подробно описано<br>
<br>
Wed, 13 Aug 2014 13:17:51 +0400 от Тимур
Нозадзе <<a href="mailto:timur.nozadze@gmail.com" target="_blank">timur.nozadze@gmail.com</a>>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Мы тут, дабы принесть немного света в наш
мир, коллективно соорудили статью: <a href="http://habrahabr.ru/company/regru/blog/232933/" target="_blank">http://habrahabr.ru/company/regru/blog/232933/</a>
.<br>
Между прочим, пользуется большим интересом
среди хабрапользователей, что не может не
радовать. И даже никто не троллит Perl в
комментах. Так что, может быть, у
Perl-сообщества ещё не всё так плохо. ;)<br>
Приглашаем всех поучаствовать в обсуждении.<br>
</blockquote>
</blockquote>
<br>
-- <br>
</div>
<div>
<div>
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>
<span><font color="#888888"><br>
<br clear="all">
<div><br>
</div>
-- <br>
С уважением, Денис Федосеев<span class="HOEnZb"><font color="#888888"><br>
</font></span></font></span></div><span class="HOEnZb"><font color="#888888">
<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>
<br>
</font></span></blockquote><span class="HOEnZb"><font color="#888888">
</font></span></div><span class="HOEnZb"><font color="#888888">
<br>
<br clear="all">
<br>
-- <br>
С уважением, Тимур Нозадзе
</font></span></div><span class="HOEnZb"><font color="#888888">
<br>
<fieldset></fieldset>
<br>
</font></span></blockquote>
<br>
</div>
<br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Best regards, Andrei<br><br></div>
</div>