Size: a a a

2020 March 22

AP

Anton Petrusevich in Modern::Perl
чтобы undef->method не падал, а возвращал андеф.
источник

AP

Anton Petrusevich in Modern::Perl
ранее выбранной комбинацией была ~>
источник

AT

Artem Tepponen in Modern::Perl
Ну так себе идея, мне кажется.
источник

AT

Artem Tepponen in Modern::Perl
Есть явные плюсы?
источник

AT

Artem Tepponen in Modern::Perl
Unblessed->method тоже не падал?
источник

AP

Anton Petrusevich in Modern::Perl
речь именно про андеф
источник

AP

Anton Petrusevich in Modern::Perl
плюсы есть, безусловно. удобный синтаксический сахар.
источник

AP

Anton Petrusevich in Modern::Perl
в любой длинной цепочке методов, когда надо типа $foo->bar->baz->ceo порой приходится делать проверку типа
 $val = $foo->bar->baz->ceo if $foo && $foo->can('bar') && $foo->bar && $foo->bar->can('baz') && $foo->bar->baz && $foo->bar->baz->can('ceo');
источник

AP

Anton Petrusevich in Modern::Perl
проблема, как правило, при написании универсальных библиотек — тебе постоянно приходится проверять разные свойства параметров, что тебе передали. очень часто, если в середине цепочки случился андеф, то тебе пофиг на остаток — результат просто должен быть конечным андефом. поэтому, этот сахар очень полезный.
источник

AP

Anton Petrusevich in Modern::Perl
реализации прохода по цепочке на перле, типа как

use List::Util  'reduce';
sub multicall { reduce { our ($a, $b); $a and $a = $a->$b } @_ }
$val = $obj->multicall(qw(foo foo baz));


ну такое себе...
источник

AP

Anton Petrusevich in Modern::Perl
оборачивать вызовы в евал тоже бред
источник

AT

Artem Tepponen in Modern::Perl
Понятно, мне такой стиль не очень
источник

AP

Anton Petrusevich in Modern::Perl
что именно "такой стиль"? разве у сложных структур данных бывает "стиль"?
источник

AT

Artem Tepponen in Modern::Perl
У тебя тут не структура данных, а структура вызовов. Иначе autovivification есть
источник

b

basiliscos in Modern::Perl
нормальный стиль. Просто надо другой оператор вводить. Например, вместо -> делать ~>
источник

AP

Anton Petrusevich in Modern::Perl
Artem Tepponen
У тебя тут не структура данных, а структура вызовов. Иначе autovivification есть
речь про объекты в объектах
источник

AP

Anton Petrusevich in Modern::Perl
basiliscos
нормальный стиль. Просто надо другой оператор вводить. Например, вместо -> делать ~>
со времён 5.10 речь
источник

AP

Anton Petrusevich in Modern::Perl
это я к теме как развивается перл5...
источник

b

basiliscos in Modern::Perl
Anton Petrusevich
со времён 5.10 речь
да всё равно, насколько замшел вопрос. Надо вводить и всё.
источник

AP

Anton Petrusevich in Modern::Perl
ну я пока только на иксес переписанный проход по цепочке могу придумать
источник