Еще один пример использования фичи Perl 5.10

| Нет комментариев

Почти два года назад появился Perl 5.10. Спустя год я начал более или менее размашисто применять его фичи на практике. А сегодня увидел в коде у коллеги интересную конструкцию с оператором defined-or (//).

Есть известный перлизм с вызовом die или warn, пристыкованным к действию, которое может завершиться с ошибкой:

open my $file, $filename or die "File not found";

А вот интересный прием с //:

do_something() // return NOT_FOUND;

Честно говоря, такая конструкция чем-то напоминает неадекватные инструкции в тернарном операторе:

is_leap_year() ? ($n = 366) : ($n = 365);

Но тем не менее показанное использование // весьма экспрессивно.

Комментировать

Страницы

  • img

Об этой записи

Сообщение опубликовано 14.10.2009 23:11. Автор — ash.

Предыдущая запись — Второй белорусский Perl-воркшоп

Следующая запись — Встреча Братиславы.pm

Смотрите новые записи на главной странице или загляните в архив, где есть ссылки на все сообщения.