[Moscow.pm] А все таки классный язык Perl.
Nikita Zubkov
nikzubkov на gmail.com
Пн Дек 10 09:40:13 PST 2012
10 декабря 2012 г., 16:20 пользователь Ivan Petrov
<i.petro.77.00 на gmail.com>написал:
>
> >> "Костыль" призванный устанить недостатки языка никогда не будет
> >> полнофункциональным. Тем более когда в языке нет конструкций для
> > правильного
> >> отлавливания таких исключений.
>
> > "в языке нет", а Mojolicious вполне ловит. чудеса да и только
>
> > Ну так поймать исключение perl вполне может. Но вот поймать определенный
> тип
> > исключений уже нет. Для этого нужно писать эмуляцию, которая еще и
> глючит в
> > некоторых ситуациях.
>
> eval {
> ...
> };
>
> if (ref $@ eq 'My::Exception::CoolClass') {
> ....
> } elsif ($@) {
> die;
> }
>
А можно еще то же самое, только с аналогом finally/ensure?
И да, это конечно читабельнее, чем:
begin
...
rescue My::Exception => e
...
end
> Впрочем, Ваша мысль мне так и осталась не понятной. Что же такого плохого
> в
> > самих structured exceptions?
>
> в них нет ничего плохого. впрочем хорошего в них я тоже не нашел
> ничего :)
>
А при чем тут тогда
> а вот что, спасибо напомнили.
> мне не нравятся в нем Exception'ы в виде классов
?
> >> Вообще-то существуют и другие варианты.
>
> > да понятное дело что существуют, разговор зашел то об этом варианте
>
> > Нет, разговор шел не об этом.
>
> написано было "неудобно везде писать $self->". я это понял именно в
> контексте того что человеку нравится что язык за него это неявно
> дописывает.
>
А это-то тут при чем? Речь о разборе параметров функции/метода.
> > эмм. b.to_i - это теплое
> > а $self->b - это мягкое
>
> > Я потерял нить. Так почему в мягком случае много boilerplate кода
> хорошо, а в
> > теплом - плохо?
>
> эмм. еще раз.
> трудно читается код (ИМХО разумеется) когда в нем идет обращение к
> переменным, определенным далее локальной области видимости.
>
> когда человек видит
>
> a = b;
>
> и не видит b внутри функции, он не знает где искать его. толи в
> глобальных переменных, толи внутри класса, толи в модульных
> переменных.
>
> когда человек видит
>
> $a = $self->b;
>
> то где что искать определено однозначно.
>
Вы, определенно, мало значете о ruby. В нем все прекрасно читается.
На этом пожалуй откланяюсь, ибо пошел беспредметный разговор, полный
домыслов.
--
С уважением,
Никита Зубков
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20121210/1cf75943/attachment.html>
Подробная информация о списке рассылки Moscow-pm