[Moscow.pm] Дайджест списка рассылки Moscow-pm; том 92, выпуск 8

Еньшин Андрей and.enshin на gmail.com
Пт Июн 19 03:27:49 PDT 2015


Стрелка -> операция разыменования. Она применима только к ссылкам. 1 не
является ссылкой.
Т.е. после $x->{y} = 1;  ты пытаешься разыменовать единицу, что не есть
возможно.

Чтобы работало $x->{y}->{z} = 2  в y должна лежать ссылка на хеш\массив или
ничего(undef), для автооживления.




18 июня 2015 г., 23:12 пользователь <moscow-pm-request на pm.org> написал:

> Сообщения, предназначенные для списка
> рассылки Moscow-pm, отправляйте по адресу
>         moscow-pm на pm.org
>
> Для изменения параметров подписки или
> отписки используйте веб-страницу
>         http://mail.pm.org/mailman/listinfo/moscow-pm
> или отправьте письмо, в теле или теме
> которого будет слово 'help', по адресу
>         moscow-pm-request на pm.org
>
> Адрес администратора этого списка
> рассылки:
>         moscow-pm-owner на pm.org
>
> При ответе, пожалуйста, измените тему
> письма на более содержательную чем "Re:
> Содержание дайджеста списка рассылки
> Moscow-pm..."
>
>
> В этом номере:
>
>    1. динамическое создание
>       конструкций вида $x->{y} (Dmitry Ivanov)
>    2. Re: динамическое создание
>       конструкций вида $x->{y} (Eugen Konkov)
>    3. Re: динамическое создание
>       конструкций вида $x->{y} (Dmitry Ivanov)
>    4. Re: динамическое создание
>       конструкций вида $x->{y} (Denis Fedoseev)
>    5. Re: динамическое создание
>       конструкций вида $x->{y} (Alexey Shrub)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Thu, 18 Jun 2015 22:38:57 +0300
> From: Dmitry Ivanov <msk-pm на sadok.spb.ru>
> To: Moscow.pm group <moscow-pm на pm.org>
> Subject: [Moscow.pm] динамическое создание
>         конструкций вида $x->{y}
> Message-ID: <1591554980.20150618223857 на sadok.spb.ru>
> Content-Type: text/plain; charset=utf-8
>
> Здравствуйте, Moscow.pm.
>
> Не знаю, как правильно сформулировать вопрос и что гуглить. Почему
> конструкция вида
>
> $x->{y} = 1;
> $x->{y}->{z} = 2;
>
> не работает, а
>
> $x->{y}->{undef} = 1;
> $x->{y}->{z} = 2;
>
> естественно работает.
>
> Проблема в том, что я заранее не знаю сколько этих
>
> $x->{y}->{z}......->{n}
>
> в итоге может получиться.
>
> Куда посмотреть?
>
> Спасибо.
>
> --
> С уважением,
>  Dmitry                          mailto:sadok на mail.ru
>
>
>
>
>
> ------------------------------
>
> Message: 2
> Date: Thu, 18 Jun 2015 22:54:19 +0100
> From: Eugen Konkov <kes-kes на yandex.ru>
> To: Dmitry Ivanov <msk-pm на sadok.spb.ru>
> Cc: Moscow.pm group <moscow-pm на pm.org>
> Subject: Re: [Moscow.pm] динамическое создание
>         конструкций вида $x->{y}
> Message-ID: <596091159.20150618225419 на yandex.ru>
> Content-Type: text/plain; charset=utf-8
>
> Здравствуйте, Dmitry.
>
> А что за ошибки пишет?
>
> Добавьте:
>
> use warnings;
> use strict;
> или
> use Modern::Perl;
>
> в начале программы.
>
> Вы писали 18 июня 2015 г., 20:38:57:
>
> DI> Здравствуйте, Moscow.pm.
>
> DI> Не знаю, как правильно сформулировать вопрос и что гуглить. Почему
> DI> конструкция вида
>
> $x->>{y} = 1;
> $x->>{y}->{z} = 2;
>
> DI> не работает, а
>
> $x->>{y}->{undef} = 1;
> $x->>{y}->{z} = 2;
>
> DI> естественно работает.
>
> DI> Проблема в том, что я заранее не знаю сколько этих
>
> $x->>{y}->{z}......->{n}
>
> DI> в итоге может получиться.
>
> DI> Куда посмотреть?
>
> DI> Спасибо.
>
> DI> --
> DI> С уважением,
> DI>  Dmitry                          mailto:sadok на mail.ru
>
>
>
>
>
>
> --
> С уважением,
>  Eugen                          mailto:kes-kes на yandex.ru
>
>
>
> ------------------------------
>
> Message: 3
> Date: Thu, 18 Jun 2015 23:06:21 +0300
> From: Dmitry Ivanov <msk-pm на sadok.spb.ru>
> To: Moscow.pm group <moscow-pm на pm.org>
> Subject: Re: [Moscow.pm] динамическое создание
>         конструкций вида $x->{y}
> Message-ID: <58164316.20150618230621 на sadok.spb.ru>
> Content-Type: text/plain; charset=utf-8
>
> Здравствуйте, Eugen.
>
> Вы писали 19 июня 2015 г., 0:54:19:
>
> > Здравствуйте, Dmitry.
>
> > А что за ошибки пишет?
>
> > Добавьте:
>
> > use warnings;
> > use strict;
> > или
> > use Modern::Perl;
>
> > в начале программы.
>
> Ошибок нет, просто не создается. Про use strict и т.п. я сознательно
> умолчал.
>
> Догадался, что надо сначала пробежаться и создать структуру. Что-то
> вроде
>
> $x->{y} = {};
> $x->{y}->{z} = {};
>
> а потом заполнить.
>
> Спасибо.
>
> --
> С уважением,
>  Dmitry                          mailto:sadok на mail.ru
>
>
>
> ------------------------------
>
> Message: 4
> Date: Thu, 18 Jun 2015 23:10:57 +0300
> From: Denis Fedoseev <denis.fedoseev на gmail.com>
> To: "Moscow.pm group" <moscow-pm на pm.org>
> Subject: Re: [Moscow.pm] динамическое создание
>         конструкций вида $x->{y}
> Message-ID:
>         <
> CALE3dTUwdOZmiJBaiBEk2DEYu+8CjWm24ZPYcuzN6su1Q+_nWQ на mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> А какая задача решается?
>
> Если с разбегу - то смотреть можно в булевом контектсте, не будет
> автовификации. Или принудительно включить прагму no autivivification (В
> названии могу ошибаться).
>
> Конструкция вида:
> $x->{y} = 1;
> $x->{y}->{z} = 2;
>
> не работает потому что при присвоении
> $x->{y}->{z} = 2;
> в {y} будет {z => 2}, а не [1, {z => 2}] ибо это не пхп и тут со
> структурами все строго.
>
> Если делать
> $x->{y}->{undef} = 1;
> $x->{y}->{z} = 2;
>
> То в {y} будет { undef => 1, z => 2} что является валидным хэшем.
>
> 19 июня 2015 г., 0:54 пользователь Eugen Konkov <kes-kes на yandex.ru>
> написал:
>
> > Здравствуйте, Dmitry.
> >
> > А что за ошибки пишет?
> >
> > Добавьте:
> >
> > use warnings;
> > use strict;
> > или
> > use Modern::Perl;
> >
> > в начале программы.
> >
> > Вы писали 18 июня 2015 г., 20:38:57:
> >
> > DI> Здравствуйте, Moscow.pm.
> >
> > DI> Не знаю, как правильно сформулировать вопрос и что гуглить. Почему
> > DI> конструкция вида
> >
> > $x->>{y} = 1;
> > $x->>{y}->{z} = 2;
> >
> > DI> не работает, а
> >
> > $x->>{y}->{undef} = 1;
> > $x->>{y}->{z} = 2;
> >
> > DI> естественно работает.
> >
> > DI> Проблема в том, что я заранее не знаю сколько этих
> >
> > $x->>{y}->{z}......->{n}
> >
> > DI> в итоге может получиться.
> >
> > DI> Куда посмотреть?
> >
> > DI> Спасибо.
> >
> > DI> --
> > DI> С уважением,
> > DI>  Dmitry                          mailto:sadok на mail.ru
> >
> >
> >
> >
> >
> >
> > --
> > С уважением,
> >  Eugen                          mailto:kes-kes на yandex.ru
> >
> > --
> > Moscow.pm mailing list
> > moscow-pm на pm.org | http://moscow.pm.org
> >
>
>
>
> --
> С уважением, Денис Федосеев
> ----------- следущая часть -----------
> Вложение в формате HTML было извлечено…
> URL: <
> http://mail.pm.org/pipermail/moscow-pm/attachments/20150618/f60a6c68/attachment-0001.html
> >
>
> ------------------------------
>
> Message: 5
> Date: Thu, 18 Jun 2015 23:09:53 +0300
> From: Alexey Shrub <worldmind на mail.ru>
> To: "Moscow.pm group" <moscow-pm на pm.org>
> Subject: Re: [Moscow.pm] динамическое создание
>         конструкций вида $x->{y}
> Message-ID: <1434658193.1693.1 на smtp.mail.ru>
> Content-Type: text/plain; charset="utf-8"; Format="flowed"
>
>
> > $x->>{y} = 1;
> > $x->>{y}->{z} = 2;
> >
> > DI> не работает
>
> а как она может работать если со
> скаляром "y" обращаться как с хешом?
> нужно уточнение что надо сделать
> ----------- следущая часть -----------
> Вложение в формате HTML было извлечено…
> URL: <
> http://mail.pm.org/pipermail/moscow-pm/attachments/20150618/910f839d/attachment.html
> >
>
> ------------------------------
>
> Subject: Нижний колонтитул дайджеста
>
> _______________________________________________
> Moscow-pm mailing list
> Moscow-pm на pm.org
> http://mail.pm.org/mailman/listinfo/moscow-pm
>
>
> ------------------------------
>
> Конец Дайджест списка рассылки Moscow-pm; том 92, выпуск 8
>
> **********************************************************************************************
>



-- 
С уважением,
Еньшин Андрей Юрьевич
тел.: +79254814571
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20150619/0ea70ecc/attachment-0001.html>


Подробная информация о списке рассылки Moscow-pm