AP> В сообщении от Thursday 25 September 2008 20:59:08 Dmitry E. Oboukhov AP> написал(а): AP>>> Постановка задачи - распарсить указанные данные. Я привел решения AP>> тиклевское и AP> перловое по идеологии (хотя оба парсера написаны на тикле, AP>> товарищ никак не AP> может избавиться от призрака перла, на котором мы AP>> раньше писали). AP>> AP>> ну вот мой парсер чем не нравится? AP>> если не нравится $_ можно вменяемые имена переменным дать AP>> AP>> my ($lexem, $args) = split /\s+/, $_, 2; AP>> или даже так: AP>> AP>> my ($lexem, @args) = split /\s+/; AP>> AP>> и функциям передавать уже расспличенный массив AP> Я года два на перле не писал, так вот это AP> eval "foo_$$_[0](\$\$_[1])"; AP> foo_unknown($$_[1]) if $@; ну так давай тогда так перепишем: my ($lexem, @args) = split /\s+/; ... eval "foo_$lexem(\@args)"; foo_unknown(@args) if $@; и сразу все вроде понятно стало, нет разве? AP> мне уже не прочитать. Это же брэйнфак какой-то, а не язык программирования. почему брейнфак? $_ - универсальная временная переменная. называлась бы она $TEMP было б так же, никто ведь не мешает называть переменные как нравится и не использовать $_? (кстати эта переменная синоним имеет $ARG в use English) AP> Может быть, оно и работает, но если помрет на каком-нибудь спецсимволе AP> входных данных, ну вообще ТАКОЙ метод парсинга как ты предложил вполне и на тикле помереть может. AP> то отладка обещает быть веселой. И вы серьезно готовы AP> мегабайт-другой такого кода поддерживать? что тебе в этом коде не нравится кроме имени временной переменной? -- . ''`. Dmitry E. Oboukhov : :’ : unera@debian.org `. `~’ GPGKey: 1024D / F8E26537 2006-11-21 `- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
Attachment:
signature.asc
Description: Digital signature