<br><br><div class="gmail_quote">10 декабря 2012 г., 16:20 пользователь Ivan Petrov <span dir="ltr"><<a href="mailto:i.petro.77.00@gmail.com" target="_blank">i.petro.77.00@gmail.com</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="im"><br>
>> "Костыль" призванный устанить недостатки языка никогда не будет<br>
>> полнофункциональным. Тем более когда в языке нет конструкций для<br>
> правильного<br>
>> отлавливания таких исключений.<br>
<br>
> "в языке нет", а Mojolicious вполне ловит. чудеса да и только<br>
<br>
> Ну так поймать исключение perl вполне может. Но вот поймать определенный тип<br>
> исключений уже нет. Для этого нужно писать эмуляцию, которая еще и глючит в<br>
> некоторых ситуациях.<br>
<br>
</div>    eval {<br>
        ...<br>
    };<br>
<br>
    if (ref $@ eq 'My::Exception::CoolClass') {<br>
        ....<br>
    } elsif ($@) {<br>
        die;<br>
<div class="im">    }<br></div></blockquote><div>А можно еще то же самое, только с аналогом finally/ensure?</div><div>И да, это конечно читабельнее, чем:</div><div><br></div><div>begin</div><div>  ...</div><div>rescue My::Exception => e</div>

<div>  ...</div><div>end</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">> Впрочем, Ваша мысль мне так и осталась не понятной. Что же такого плохого в<br>


> самих structured exceptions?<br>
<br>
</div>в них нет ничего плохого. впрочем хорошего в них я тоже не нашел<br>
ничего :)<br></blockquote><div><br></div><div>А при чем тут тогда</div><div><span style="color:rgb(80,0,80);font-family:arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">> а вот что, спасибо напомнили.</span><br style="color:rgb(80,0,80);font-family:arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">

<span style="color:rgb(80,0,80);font-family:arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">> мне не нравятся в нем Exception'ы в виде классов</span></div><div>?</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div class="im"><br>
>> Вообще-то существуют и другие варианты.<br>
<br>
> да понятное дело что существуют, разговор зашел то об этом варианте<br>
<br>
> Нет, разговор шел не об этом.<br>
<br>
</div>написано было "неудобно везде писать $self->". я это понял именно в<br>
контексте того что человеку нравится что язык за него это неявно<br>
дописывает.<br></blockquote><div>А это-то тут при чем? Речь о разборе параметров функции/метода.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">> эмм. b.to_i - это теплое<br>
> а $self->b - это мягкое<br>
<br>
> Я потерял нить. Так почему в мягком случае много boilerplate кода хорошо, а в<br>
> теплом - плохо?<br>
<br>
</div>эмм. еще раз.<br>
трудно читается код (ИМХО разумеется) когда в нем идет обращение к<br>
переменным, определенным далее локальной области видимости.<br>
<br>
когда человек видит<br>
<br>
 a = b;<br>
<br>
и не видит b внутри функции, он не знает где искать его. толи в<br>
глобальных переменных, толи внутри класса, толи в модульных<br>
переменных.<br>
<br>
когда человек видит<br>
<br>
 $a = $self->b;<br>
<br>
то где что искать определено однозначно.<br></blockquote><div>Вы, определенно, мало значете о ruby. В нем все прекрасно читается.</div><div><br></div><div>На этом пожалуй откланяюсь, ибо пошел беспредметный разговор, полный домыслов.</div>

<div><br></div></div>-- <br>С уважением,<br>Никита Зубков<br>