From dsimonov на gmail.com Tue Apr 4 09:25:36 2017 From: dsimonov на gmail.com (Dmitry Simonov) Date: Tue, 4 Apr 2017 19:25:36 +0300 Subject: [Moscow.pm] =?utf-8?b?0JLQsNC60LDQvdGB0LjRjyDRhNGD0LvRgtCw0Lk=?= =?utf-8?b?0Lwg0YPQtNCw0LvRkdC90LrQsA==?= Message-ID: ВАКАНСИЯ: Разработчик Perl Формат работы: удалёнка Занятость: полная Зарплатная вилка: до 120 000 рублей Автоматический медиатор рекламы ADCEL.CO представляет собой полноценную аналитическую платформу, заточенную под увеличение доходов паблишеров за счёт умных алгоритмов, bigdata и machine learning. Обязательные требования: * Perl * Знание на продвинутом уровне *nix систем * Использование системы контроля версий * Дополнительно: - Знание Docker - Применение паттернов программирования - Умение интегрировать готовые библиотеки - Понимание чужого кода - Умение писать валидный и хорошо документированный код - Английский язык (минимум чтение тех.документации) * Плюсом будет: - SRE, DevOps - Опыт разработки сложных серверных-приложений Помимо действительно интересных проектов и возможности реализовать себя мы предлагаем: * Modern Perl; * Удалёнка; * Полная занятость, гибкий и нежный график; * Common sense в управлении проектом. Мы верим, что разработка на Perl делает мир чище, а людей умнее. И клевыми, да! --- Dmitriy V. Simonov From khedin на gmail.com Tue Apr 18 05:28:02 2017 From: khedin на gmail.com (Konstantin S. Uvarin) Date: Tue, 18 Apr 2017 15:28:02 +0300 Subject: [Moscow.pm] SQL + \%hash -> SQL Message-ID: Приветствую! Очередная безумная идея, рождённая вследствие просмотра SQL::Abstract и всяких прочих LINQ. Периодически возникает ситуация, когда мы что-то выбираем из базы, но конкретные критерии неизвестны заранее (date < ? или date > ? или оба). Тут мне известны варианты: * сделать нужный запрос руками ($sql .= (defined $x ? " foo = ?" : " foo IS NULL"); * прогенерить из DSL; * написать один раз функцию, которая генерит селект_заданного_типа для данной конкретной модели; * использовать ORM. (Что я пропустил?..) Ну и вот, собственно, идея: в большинстве случаев "каждый раз другие" критерии - это на самом деле просто группа отношений, которые надо применить к заранее известной таблице. Поэтому пишем шаблон запроса (как с плейсхолдерами (foo =?)) + добавляем хеши условий вместо одиночных значений. Т.е. используем SQL как DSL для описания SQL. Что-то вроде my $template_query = "SELECT * FROM foobar f WHERE f.??? ORDER BY created LIMIT ?"; my %criteria = ( foo => 42, bar => undef ); my ($normal_query, @param_list) = decorate_query( $template_query, \%criteria, 12 ); на выходе вместо трёх вопросов - "f.foo = ? AND f.bar IS NULL" и потом два параметра (42, 12). ??? выбрано потому, что вряд ли кто-то в здравом уме напишет три плейсхолдера подряд без пробелов. А префикс f. мы требуем, ибо может быть более 1 таблицы (да и скорее всего будет много таблиц - типа пришёл DBA с листочком - "я вам тут запросы соптимизировал, ннннадо?.."). И вторая часть - а как нам покороче записать foo < 5? SQL::Abstract предлагает foo => { "<" => 5 }, но мне кажется, что можно сделать через прототипы + overload (точнее, я уже сделал, но там такой код, что его показывать стыдно): { foo => (value < 5) & (value != 3), bar => value->in("дыр", "бул", "щыл")), } 1. Чего не хватает в списке вариантов? 2. Есть ли уже что-то подобное? 3. Достаточно ли выразителен синтаксис t.???, или надо что-то поинтереснее? А если мы хотим заранее определить поля? У меня была идея "t.???[city cost created]", но, может, что-то получше можно? Всем хорошего (остатка) дня! -- Konstantin S. Uvarin jabber: see skype: kuvarin http://github.com/dallaylaen ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From akzhan.abdulin на gmail.com Tue Apr 18 07:11:06 2017 From: akzhan.abdulin на gmail.com (Akzhan Abdulin) Date: Tue, 18 Apr 2017 17:11:06 +0300 Subject: [Moscow.pm] SQL + \%hash -> SQL In-Reply-To: References: Message-ID: А чем не понравился ВИШчЖЖСдфы или другие ORM, которые используют SQL::Abstract? Как минимум, они берут на себя и такие вещи, как join/prefetch/having etc.. 18 апреля 2017 г., 15:28 пользователь Konstantin S. Uvarin via Moscow-pm < moscow-pm на pm.org> написал: > Приветствую! > > Очередная безумная идея, рождённая вследствие просмотра SQL::Abstract и > всяких прочих LINQ. Периодически возникает ситуация, когда мы что-то > выбираем из базы, но конкретные критерии неизвестны заранее (date < ? или > date > ? или оба). Тут мне известны варианты: > > * сделать нужный запрос руками ($sql .= (defined $x ? " foo = ?" : " foo > IS NULL"); > * прогенерить из DSL; > * написать один раз функцию, которая генерит селект_заданного_типа для > данной конкретной модели; > * использовать ORM. > > (Что я пропустил?..) > > Ну и вот, собственно, идея: в большинстве случаев "каждый раз другие" > критерии - это на самом деле просто группа отношений, которые надо > применить к заранее известной таблице. Поэтому пишем шаблон запроса (как с > плейсхолдерами (foo =?)) + добавляем хеши условий вместо одиночных > значений. Т.е. используем SQL как DSL для описания SQL. > > Что-то вроде > > my $template_query = "SELECT * FROM foobar f WHERE f.??? ORDER BY > created LIMIT ?"; > my %criteria = ( foo => 42, bar => undef ); > my ($normal_query, @param_list) = decorate_query( $template_query, > \%criteria, 12 ); > > на выходе вместо трёх вопросов - "f.foo = ? AND f.bar IS NULL" и потом > два параметра (42, 12). > > ??? выбрано потому, что вряд ли кто-то в здравом уме напишет три > плейсхолдера подряд без пробелов. А префикс f. мы требуем, ибо может быть > более 1 таблицы (да и скорее всего будет много таблиц - типа пришёл DBA с > листочком - "я вам тут запросы соптимизировал, ннннадо?.."). > > И вторая часть - а как нам покороче записать foo < 5? SQL::Abstract > предлагает foo => { "<" => 5 }, но мне кажется, что можно сделать через > прототипы + overload (точнее, я уже сделал, но там такой код, что его > показывать стыдно): > > { > foo => (value < 5) & (value != 3), > bar => value->in("дыр", "бул", "щыл")), > } > > 1. Чего не хватает в списке вариантов? > 2. Есть ли уже что-то подобное? > 3. Достаточно ли выразителен синтаксис t.???, или надо что-то > поинтереснее? А если мы хотим заранее определить поля? У меня была идея > "t.???[city cost created]", но, может, что-то получше можно? > > Всем хорошего (остатка) дня! > > -- > Konstantin S. Uvarin > jabber: see > skype: kuvarin > http://github.com/dallaylaen > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From kes-kes на yandex.ru Wed Apr 19 00:17:49 2017 From: kes-kes на yandex.ru (KES) Date: Wed, 19 Apr 2017 10:17:49 +0300 Subject: [Moscow.pm] =?utf-8?b?U29mdCBjYWxsIG9wZXJhdG9yICjQntC/0LXRgNCw?= =?utf-8?b?0YLQvtGAINC80Y/Qs9C60L7Qs9C+INCy0YvQt9C+0LLQsCk6IH4+?= Message-ID: <2654291492586269@web57g.yandex.ru> Привет. А у меня вот давно витает идея "мягкого вызова". Даже ещё когда писал на ассемблере всегда раздражали исключения при `CALL 0` ну вот снова вернулся к этой теме. 1. Что не так? Очень часто приходится писать следующий код: my $x; my $y; if( ($x = $obj->method) && $y = $x->another_method ) { $y = ...; } Пример из жизни: if( $db->query( ... )->hash->{ value } ) { ... } if( $db->resultset( 'table' )->search( ... )->related_resultset( 'table2' ) { ... } тут если запрос вернул пустой результат, то код упадёт. А если использовать оператор мягкого вызова, то можно будет не бояться исключений и код станет проще: use pragma 'soft_call'; if( my $x = $obj->method~>another_method ) { ... } if( $db->query( ... )~>hash->{ value } ) { ... } if( $db->resultset( 'table' )->search( ... )~>related_resultset( 'table2' ) { ... } И вроде как всё выразительно получается. Даже сама реализация прагмы в десяток строк: 1. делаем плагин для keyword, Наподобие Syntax::Keyword::Try 2. цепляемся на http://perldoc.perl.org/perlguts.html#Pluggable-runops 3. Псевдокод: sub soft_call_operator { my( $left_operand, $right_operand ) = @_; return undef if !defined $left_operand; '->'( $left_operand, $right_operand ); # делаем обычную обработку вызова функции } Комментарии wellcome From qalexx на gmail.com Wed Apr 19 00:42:03 2017 From: qalexx на gmail.com (Alexander Q) Date: Wed, 19 Apr 2017 07:42:03 +0000 Subject: [Moscow.pm] =?utf-8?b?U29mdCBjYWxsIG9wZXJhdG9yICjQntC/0LXRgNCw?= =?utf-8?b?0YLQvtGAINC80Y/Qs9C60L7Qs9C+INCy0YvQt9C+0LLQsCk6IH4+?= In-Reply-To: <2654291492586269@web57g.yandex.ru> References: <2654291492586269@web57g.yandex.ru> Message-ID: Это монада On Wed, 19 Apr 2017, 10:21 KES via Moscow-pm, wrote: > Привет. > > А у меня вот давно витает идея "мягкого вызова". > Даже ещё когда писал на ассемблере всегда раздражали исключения при `CALL > 0` > > ну вот снова вернулся к этой теме. > > 1. Что не так? > Очень часто приходится писать следующий код: > my $x; my $y; > if( ($x = $obj->method) && $y = $x->another_method ) { > $y = ...; > } > > Пример из жизни: > > if( $db->query( ... )->hash->{ value } ) { ... } > if( $db->resultset( 'table' )->search( ... )->related_resultset( 'table2' > ) { ... } > > > тут если запрос вернул пустой результат, то код упадёт. > > А если использовать оператор мягкого вызова, то можно будет не бояться > исключений и код станет проще: > > use pragma 'soft_call'; > if( my $x = $obj->method~>another_method ) { ... } > if( $db->query( ... )~>hash->{ value } ) { ... } > if( $db->resultset( 'table' )->search( ... )~>related_resultset( 'table2' > ) { ... } > > И вроде как всё выразительно получается. > > Даже сама реализация прагмы в десяток строк: > 1. делаем плагин для keyword, Наподобие Syntax::Keyword::Try > 2. цепляемся на http://perldoc.perl.org/perlguts.html#Pluggable-runops > 3. Псевдокод: > sub soft_call_operator { > my( $left_operand, $right_operand ) = @_; > > return undef if !defined $left_operand; > > '->'( $left_operand, $right_operand ); # делаем обычную обработку > вызова функции > } > > > Комментарии wellcome > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From qalexx на gmail.com Wed Apr 19 00:56:39 2017 From: qalexx на gmail.com (Alexander Q) Date: Wed, 19 Apr 2017 07:56:39 +0000 Subject: [Moscow.pm] =?utf-8?b?U29mdCBjYWxsIG9wZXJhdG9yICjQntC/0LXRgNCw?= =?utf-8?b?0YLQvtGAINC80Y/Qs9C60L7Qs9C+INCy0YvQt9C+0LLQsCk6IH4+?= In-Reply-To: References: <2654291492586269@web57g.yandex.ru> Message-ID: Чтоб быть точным, монада Maybe в терминах хаскеля. из пары функций типов f :: a -> Maybe b, g :: b -> Maybe c вы составляете функцию a -> Maybe c оператором bind ("мягкого вызова" в ваших терминах) следующим образом: (f a) >>= g или можете сделать функцию новую просто с новым типом u :: a -> Maybe c u = f >> g и применять её u a Вообще, монады не просто так возникли. Это хорошая, мощная абстракция, которая работает не только для "мягких вызовов". Нет ничего плохого в придумывании велосипедов, но прежде чем запускать их массовое производство, имеет смысл изучить опыт конкурентов. On Wed, Apr 19, 2017 at 10:42 AM Alexander Q wrote: > Это монада > > On Wed, 19 Apr 2017, 10:21 KES via Moscow-pm, wrote: > >> Привет. >> >> А у меня вот давно витает идея "мягкого вызова". >> Даже ещё когда писал на ассемблере всегда раздражали исключения при `CALL >> 0` >> >> ну вот снова вернулся к этой теме. >> >> 1. Что не так? >> Очень часто приходится писать следующий код: >> my $x; my $y; >> if( ($x = $obj->method) && $y = $x->another_method ) { >> $y = ...; >> } >> >> Пример из жизни: >> >> if( $db->query( ... )->hash->{ value } ) { ... } >> if( $db->resultset( 'table' )->search( ... )->related_resultset( 'table2' >> ) { ... } >> >> >> тут если запрос вернул пустой результат, то код упадёт. >> >> А если использовать оператор мягкого вызова, то можно будет не бояться >> исключений и код станет проще: >> >> use pragma 'soft_call'; >> if( my $x = $obj->method~>another_method ) { ... } >> if( $db->query( ... )~>hash->{ value } ) { ... } >> if( $db->resultset( 'table' )->search( ... )~>related_resultset( 'table2' >> ) { ... } >> >> И вроде как всё выразительно получается. >> >> Даже сама реализация прагмы в десяток строк: >> 1. делаем плагин для keyword, Наподобие Syntax::Keyword::Try >> 2. цепляемся на http://perldoc.perl.org/perlguts.html#Pluggable-runops >> 3. Псевдокод: >> sub soft_call_operator { >> my( $left_operand, $right_operand ) = @_; >> >> return undef if !defined $left_operand; >> >> '->'( $left_operand, $right_operand ); # делаем обычную обработку >> вызова функции >> } >> >> >> Комментарии wellcome >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From theathlet на yandex.ru Wed Apr 19 01:08:52 2017 From: theathlet на yandex.ru (=?utf-8?B?0JrQvtCy0LDQu9GMINCS0Y/Rh9C10YHQu9Cw0LI=?=) Date: Wed, 19 Apr 2017 09:08:52 +0100 Subject: [Moscow.pm] =?utf-8?b?U29mdCBjYWxsIG9wZXJhdG9yICjQntC/0LXRgNCw?= =?utf-8?b?0YLQvtGAINC80Y/Qs9C60L7Qs9C+INCy0YvQt9C+0LLQsCk6IH4+?= In-Reply-To: References: <2654291492586269@web57g.yandex.ru> Message-ID: <3166791492589332@web29g.yandex.ru> Вложение в формате HTML было извлечено… URL: From qalexx на gmail.com Wed Apr 19 01:11:24 2017 From: qalexx на gmail.com (Alexander Q) Date: Wed, 19 Apr 2017 08:11:24 +0000 Subject: [Moscow.pm] =?utf-8?b?U29mdCBjYWxsIG9wZXJhdG9yICjQntC/0LXRgNCw?= =?utf-8?b?0YLQvtGAINC80Y/Qs9C60L7Qs9C+INCy0YvQt9C+0LLQsCk6IH4+?= In-Reply-To: <3166791492589332@web29g.yandex.ru> References: <2654291492586269@web57g.yandex.ru> <3166791492589332@web29g.yandex.ru> Message-ID: И на safe calls nullable типов в Kotlin https://kotlinlang.org/docs/reference/null-safety.html#safe-calls Только монады — это гораздо больше и значительно раньше. On Wed, Apr 19, 2017 at 11:08 AM Коваль Вячеслав wrote: > думаю это похоже на операторы с условием NULL в C# > https://msdn.microsoft.com/ru-ru/library/dn986595.aspx > > > 19.04.2017, 09:03, "Alexander Q via Moscow-pm" : > > Чтоб быть точным, монада Maybe в терминах хаскеля. > > из пары функций типов f :: a -> Maybe b, g :: b -> Maybe c вы составляете > функцию a -> Maybe c оператором bind ("мягкого вызова" в ваших терминах) > следующим образом: > > (f a) >>= g > > или можете сделать функцию новую просто с новым типом > u :: a -> Maybe c > u = f >> g > > и применять её > u a > > Вообще, монады не просто так возникли. Это хорошая, мощная абстракция, > которая работает не только для "мягких вызовов". Нет ничего плохого в > придумывании велосипедов, но прежде чем запускать их массовое производство, > имеет смысл изучить опыт конкурентов. > > > > On Wed, Apr 19, 2017 at 10:42 AM Alexander Q wrote: > > Это монада > > On Wed, 19 Apr 2017, 10:21 KES via Moscow-pm, wrote: > > Привет. > > А у меня вот давно витает идея "мягкого вызова". > Даже ещё когда писал на ассемблере всегда раздражали исключения при `CALL > 0` > > ну вот снова вернулся к этой теме. > > 1. Что не так? > Очень часто приходится писать следующий код: > my $x; my $y; > if( ($x = $obj->method) && $y = $x->another_method ) { > $y = ...; > } > > Пример из жизни: > > if( $db->query( ... )->hash->{ value } ) { ... } > if( $db->resultset( 'table' )->search( ... )->related_resultset( 'table2' > ) { ... } > > > тут если запрос вернул пустой результат, то код упадёт. > > А если использовать оператор мягкого вызова, то можно будет не бояться > исключений и код станет проще: > > use pragma 'soft_call'; > if( my $x = $obj->method~>another_method ) { ... } > if( $db->query( ... )~>hash->{ value } ) { ... } > if( $db->resultset( 'table' )->search( ... )~>related_resultset( 'table2' > ) { ... } > > И вроде как всё выразительно получается. > > Даже сама реализация прагмы в десяток строк: > 1. делаем плагин для keyword, Наподобие Syntax::Keyword::Try > 2. цепляемся на http://perldoc.perl.org/perlguts.html#Pluggable-runops > 3. Псевдокод: > sub soft_call_operator { > my( $left_operand, $right_operand ) = @_; > > return undef if !defined $left_operand; > > '->'( $left_operand, $right_operand ); # делаем обычную обработку > вызова функции > } > > > Комментарии wellcome > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > ,-- > > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > > > -- > Яндекс.Почта — надёжная почта > http://mail.yandex.ru/neo2/collect/?exp=1&t=1 > > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From and.enshin на gmail.com Wed Apr 19 04:30:14 2017 From: and.enshin на gmail.com (=?UTF-8?B?0JDQvdC00YDQtdC5INCV0L3RjNGI0LjQvQ==?=) Date: Wed, 19 Apr 2017 14:30:14 +0300 Subject: [Moscow.pm] =?utf-8?b?0JTQsNC50LTQttC10YHRgiDRgdC/0LjRgdC60LAg?= =?utf-8?b?0YDQsNGB0YHRi9C70LrQuCBNb3Njb3ctcG07INGC0L7QvCAxMTQsINCy0Ys=?= =?utf-8?b?0L/Rg9GB0LogMw==?= In-Reply-To: References: Message-ID: <1492601414.34615437@f170.i.mail.ru> Привет! Я тут на япси рассказывал про это, но все спали(  https://www.youtube.com/watch?v=17Lo_QLcid4&feature=youtu.be&t=27395   ) однако рассказчик из меня так себе, к тому же это был вольный перевод статьи: http://shadow.cat/blog/matt-s-trout/madness-with-methods/ >Среда, 19 апреля 2017, 11:03 +03:00 от 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. Soft call operator (Оператор мягкого >      вызова): ~> (KES) >   2. Re: Soft call operator (Оператор мягкого >      вызова): ~> (Alexander Q) >   3. Re: Soft call operator (Оператор мягкого >      вызова): ~> (Alexander Q) > > >---------------------------------------------------------------------- > >Message: 1 >Date: Wed, 19 Apr 2017 10:17:49 +0300 >From: KES < kes-kes на yandex.ru > >To: Moscow.pm group < moscow-pm на pm.org > >Cc: Kiev. pm group < kiev-pm на pm.org > >Subject: [Moscow.pm] Soft call operator (Оператор >мягкого вызова): ~> >Message-ID: < 2654291492586269 на web57g.yandex.ru > >Content-Type: text/plain; charset=utf-8 > >Привет. > >А у меня вот давно витает идея "мягкого вызова". >Даже ещё когда писал на ассемблере всегда раздражали исключения при `CALL 0` > >ну вот снова вернулся к этой теме. > >1. Что не так? >Очень часто приходится писать следующий код: >my $x; my $y; >if( ($x = $obj->method) && $y = $x->another_method ) { >     $y = ...; >} > >Пример из жизни: > >if( $db->query( ... )->hash->{ value } ) { ... } >if( $db->resultset( 'table' )->search( ... )->related_resultset( 'table2' ) { ... } > > >тут если запрос вернул пустой результат, то код упадёт. > >А если использовать оператор мягкого вызова, то можно будет не бояться исключений и код станет проще: > >use pragma 'soft_call'; >if( my $x = $obj->method~>another_method ) { ... } >if( $db->query( ... )~>hash->{ value } ) { ... } >if( $db->resultset( 'table' )->search( ... )~>related_resultset( 'table2' ) { ... } > >И вроде как всё выразительно получается. > >Даже сама реализация прагмы в десяток строк: >1. делаем плагин для keyword, Наподобие Syntax::Keyword::Try >2. цепляемся на http://perldoc.perl.org/perlguts.html#Pluggable-runops >3. Псевдокод: >sub soft_call_operator { >    my( $left_operand, $right_operand ) = @_; > >    return undef if !defined $left_operand; > >    '->'( $left_operand, $right_operand ); # делаем обычную обработку вызова функции >} > > >Комментарии wellcome > > >------------------------------ > >Message: 2 >Date: Wed, 19 Apr 2017 07:42:03 +0000 >From: Alexander Q < qalexx на gmail.com > >To: "Moscow.pm group" < moscow-pm на pm.org > >Cc: KES < kes-kes на yandex.ru >, "Kiev. pm group" < kiev-pm на pm.org > >Subject: Re: [Moscow.pm] Soft call operator (Оператор >мягкого вызова): ~> >Message-ID: >< CAEJuZgeq8BP9uZ+TahvOHzsjXHYb+nyn4ioXORnSNjZ-hQG=pg на mail.gmail.com > >Content-Type: text/plain; charset="utf-8" > >Это монада > >On Wed, 19 Apr 2017, 10:21 KES via Moscow-pm, < moscow-pm на pm.org > wrote: > >> Привет. >> >> А у меня вот давно витает идея "мягкого вызова". >> Даже ещё когда писал на ассемблере всегда раздражали исключения при `CALL >> 0` >> >> ну вот снова вернулся к этой теме. >> >> 1. Что не так? >> Очень часто приходится писать следующий код: >> my $x; my $y; >> if( ($x = $obj->method) && $y = $x->another_method ) { >> $y = ...; >> } >> >> Пример из жизни: >> >> if( $db->query( ... )->hash->{ value } ) { ... } >> if( $db->resultset( 'table' )->search( ... )->related_resultset( 'table2' >> ) { ... } >> >> >> тут если запрос вернул пустой результат, то код упадёт. >> >> А если использовать оператор мягкого вызова, то можно будет не бояться >> исключений и код станет проще: >> >> use pragma 'soft_call'; >> if( my $x = $obj->method~>another_method ) { ... } >> if( $db->query( ... )~>hash->{ value } ) { ... } >> if( $db->resultset( 'table' )->search( ... )~>related_resultset( 'table2' >> ) { ... } >> >> И вроде как всё выразительно получается. >> >> Даже сама реализация прагмы в десяток строк: >> 1. делаем плагин для keyword, Наподобие Syntax::Keyword::Try >> 2. цепляемся на http://perldoc.perl.org/perlguts.html#Pluggable-runops >> 3. Псевдокод: >> sub soft_call_operator { >> my( $left_operand, $right_operand ) = @_; >> >> return undef if !defined $left_operand; >> >> '->'( $left_operand, $right_operand ); # делаем обычную обработку >> вызова функции >> } >> >> >> Комментарии wellcome >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> >----------- следущая часть ----------- >Вложение в формате HTML было извлечено… >URL: < http://mail.pm.org/pipermail/moscow-pm/attachments/20170419/c7accc8c/attachment-0001.html > > >------------------------------ > >Message: 3 >Date: Wed, 19 Apr 2017 07:56:39 +0000 >From: Alexander Q < qalexx на gmail.com > >To: "Moscow.pm group" < moscow-pm на pm.org > >Cc: KES < kes-kes на yandex.ru >, "Kiev. pm group" < kiev-pm на pm.org > >Subject: Re: [Moscow.pm] Soft call operator (Оператор >мягкого вызова): ~> >Message-ID: >< CAEJuZgcwfhDer0z52x74-CdNvPOX2L1FjJJCWWSbkot-cA6CBQ на mail.gmail.com > >Content-Type: text/plain; charset="utf-8" > >Чтоб быть точным, монада Maybe в терминах хаскеля. > >из пары функций типов f :: a -> Maybe b, g :: b -> Maybe c вы составляете >функцию a -> Maybe c оператором bind ("мягкого вызова" в ваших терминах) >следующим образом: > >(f a) >>= g > >или можете сделать функцию новую просто с новым типом >u :: a -> Maybe c >u = f >> g > >и применять её >u a > >Вообще, монады не просто так возникли. Это хорошая, мощная абстракция, >которая работает не только для "мягких вызовов". Нет ничего плохого в >придумывании велосипедов, но прежде чем запускать их массовое производство, >имеет смысл изучить опыт конкурентов. > > > >On Wed, Apr 19, 2017 at 10:42 AM Alexander Q < qalexx на gmail.com > wrote: > >> Это монада >> >> On Wed, 19 Apr 2017, 10:21 KES via Moscow-pm, < moscow-pm на pm.org > wrote: >> >>> Привет. >>> >>> А у меня вот давно витает идея "мягкого вызова". >>> Даже ещё когда писал на ассемблере всегда раздражали исключения при `CALL >>> 0` >>> >>> ну вот снова вернулся к этой теме. >>> >>> 1. Что не так? >>> Очень часто приходится писать следующий код: >>> my $x; my $y; >>> if( ($x = $obj->method) && $y = $x->another_method ) { >>> $y = ...; >>> } >>> >>> Пример из жизни: >>> >>> if( $db->query( ... )->hash->{ value } ) { ... } >>> if( $db->resultset( 'table' )->search( ... )->related_resultset( 'table2' >>> ) { ... } >>> >>> >>> тут если запрос вернул пустой результат, то код упадёт. >>> >>> А если использовать оператор мягкого вызова, то можно будет не бояться >>> исключений и код станет проще: >>> >>> use pragma 'soft_call'; >>> if( my $x = $obj->method~>another_method ) { ... } >>> if( $db->query( ... )~>hash->{ value } ) { ... } >>> if( $db->resultset( 'table' )->search( ... )~>related_resultset( 'table2' >>> ) { ... } >>> >>> И вроде как всё выразительно получается. >>> >>> Даже сама реализация прагмы в десяток строк: >>> 1. делаем плагин для keyword, Наподобие Syntax::Keyword::Try >>> 2. цепляемся на http://perldoc.perl.org/perlguts.html#Pluggable-runops >>> 3. Псевдокод: >>> sub soft_call_operator { >>> my( $left_operand, $right_operand ) = @_; >>> >>> return undef if !defined $left_operand; >>> >>> '->'( $left_operand, $right_operand ); # делаем обычную обработку >>> вызова функции >>> } >>> >>> >>> Комментарии wellcome >>> -- >>> Moscow.pm mailing list >>> moscow-pm на pm.org | http://moscow.pm.org >>> >> >----------- следущая часть ----------- >Вложение в формате HTML было извлечено… >URL: < http://mail.pm.org/pipermail/moscow-pm/attachments/20170419/fe63f691/attachment.html > > >------------------------------ > >Subject: Нижний колонтитул дайджеста > >_______________________________________________ >Moscow-pm mailing list >Moscow-pm на pm.org >http://mail.pm.org/mailman/listinfo/moscow-pm > > >------------------------------ > >Конец Дайджест списка рассылки Moscow-pm; том 114, выпуск 3 >*********************************************************************************************** С уважением, Андрей Еньшин ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From akovbovich на gmail.com Wed Apr 19 13:33:12 2017 From: akovbovich на gmail.com (Andrey Kovbovich) Date: Wed, 19 Apr 2017 23:33:12 +0300 Subject: [Moscow.pm] =?utf-8?b?U29mdCBjYWxsIG9wZXJhdG9yICjQntC/0LXRgNCw?= =?utf-8?b?0YLQvtGAINC80Y/Qs9C60L7Qs9C+INCy0YvQt9C+0LLQsCk6IH4+?= In-Reply-To: References: <2654291492586269@web57g.yandex.ru> <3166791492589332@web29g.yandex.ru> Message-ID: См. https://metacpan.org/pod/Promises и https://metacpan.org/pod/Future On Apr 19, 2017 11:19, "Alexander Q via Moscow-pm" wrote: > И на safe calls nullable типов в Kotlin https://kotlinlang.org/docs/ > reference/null-safety.html#safe-calls > > Только монады — это гораздо больше и значительно раньше. > > On Wed, Apr 19, 2017 at 11:08 AM Коваль Вячеслав > wrote: > >> думаю это похоже на операторы с условием NULL в C# >> https://msdn.microsoft.com/ru-ru/library/dn986595.aspx >> >> >> 19.04.2017, 09:03, "Alexander Q via Moscow-pm" : >> >> Чтоб быть точным, монада Maybe в терминах хаскеля. >> >> из пары функций типов f :: a -> Maybe b, g :: b -> Maybe c вы составляете >> функцию a -> Maybe c оператором bind ("мягкого вызова" в ваших терминах) >> следующим образом: >> >> (f a) >>= g >> >> или можете сделать функцию новую просто с новым типом >> u :: a -> Maybe c >> u = f >> g >> >> и применять её >> u a >> >> Вообще, монады не просто так возникли. Это хорошая, мощная абстракция, >> которая работает не только для "мягких вызовов". Нет ничего плохого в >> придумывании велосипедов, но прежде чем запускать их массовое производство, >> имеет смысл изучить опыт конкурентов. >> >> >> >> On Wed, Apr 19, 2017 at 10:42 AM Alexander Q wrote: >> >> Это монада >> >> On Wed, 19 Apr 2017, 10:21 KES via Moscow-pm, wrote: >> >> Привет. >> >> А у меня вот давно витает идея "мягкого вызова". >> Даже ещё когда писал на ассемблере всегда раздражали исключения при `CALL >> 0` >> >> ну вот снова вернулся к этой теме. >> >> 1. Что не так? >> Очень часто приходится писать следующий код: >> my $x; my $y; >> if( ($x = $obj->method) && $y = $x->another_method ) { >> $y = ...; >> } >> >> Пример из жизни: >> >> if( $db->query( ... )->hash->{ value } ) { ... } >> if( $db->resultset( 'table' )->search( ... )->related_resultset( 'table2' >> ) { ... } >> >> >> тут если запрос вернул пустой результат, то код упадёт. >> >> А если использовать оператор мягкого вызова, то можно будет не бояться >> исключений и код станет проще: >> >> use pragma 'soft_call'; >> if( my $x = $obj->method~>another_method ) { ... } >> if( $db->query( ... )~>hash->{ value } ) { ... } >> if( $db->resultset( 'table' )->search( ... )~>related_resultset( 'table2' >> ) { ... } >> >> И вроде как всё выразительно получается. >> >> Даже сама реализация прагмы в десяток строк: >> 1. делаем плагин для keyword, Наподобие Syntax::Keyword::Try >> 2. цепляемся на http://perldoc.perl.org/perlguts.html#Pluggable-runops >> 3. Псевдокод: >> sub soft_call_operator { >> my( $left_operand, $right_operand ) = @_; >> >> return undef if !defined $left_operand; >> >> '->'( $left_operand, $right_operand ); # делаем обычную обработку >> вызова функции >> } >> >> >> Комментарии wellcome >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> >> ,-- >> >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> >> >> >> -- >> Яндекс.Почта — надёжная почта >> http://mail.yandex.ru/neo2/collect/?exp=1&t=1 >> >> > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From akzhan.abdulin на gmail.com Sat Apr 22 12:30:31 2017 From: akzhan.abdulin на gmail.com (Akzhan Abdulin) Date: Sat, 22 Apr 2017 22:30:31 +0300 Subject: [Moscow.pm] Your company project in Modern Perl Message-ID: Hello, Just note about in-process modern Perl project boilerplate . Feedback welcome. With best wishes, Akzhan. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From akzhan.abdulin на gmail.com Sat Apr 22 12:31:38 2017 From: akzhan.abdulin на gmail.com (Akzhan Abdulin) Date: Sat, 22 Apr 2017 22:31:38 +0300 Subject: [Moscow.pm] Your company project in Modern Perl In-Reply-To: References: Message-ID: Oops, forget to mention about https://t.me/modernperl 2017-04-22 22:30 GMT+03:00 Akzhan Abdulin : > Hello, > > Just note about in-process modern Perl project boilerplate > . > > Feedback welcome. > > With best wishes, > Akzhan. > > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From worldmind на mail.ru Wed Apr 26 07:57:14 2017 From: worldmind на mail.ru (Alexey Shrub) Date: Wed, 26 Apr 2017 17:57:14 +0300 Subject: [Moscow.pm] =?koi8-r?b?/tXUz8sg0M/S1cfBzCDQxdLM?= Message-ID: <1493218634.2391.1@smtp.mail.ru> Приветствую всех, для тех кто не читает хабр, мой небольшой наброс https://habrahabr.ru/post/327408/ -- Alexey Shrub mindstate.info From andy на shitov.ru Wed Apr 26 09:21:09 2017 From: andy на shitov.ru (Andrew Shitov) Date: Wed, 26 Apr 2017 18:21:09 +0200 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493218634.2391.1@smtp.mail.ru> References: <1493218634.2391.1@smtp.mail.ru> Message-ID: Не, ну часть чисто манипулирование. "Передача параметров в функцию — опять же, предлагается какой-то низкоуровневый механизм, параметры приходят виде массива" Это примерно то же, что было написано в одной из первых книг по Java Патрика Нотона, где недостатки C++ объяснялись на примерах кода на C. Для параметров есть Perl 5.20, не говоря уже о Perl 6 :-) 2017-04-26 16:57 GMT+02:00 Alexey Shrub via Moscow-pm : > Приветствую всех, > > для тех кто не читает хабр, мой небольшой наброс > https://habrahabr.ru/post/327408/ > > -- > Alexey Shrub > mindstate.info > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > -- Andrew Shitov ______________________________________________________________________ andy на shitov.ru | http://shitov.ru ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From ksvs1996 на ymail.com Wed Apr 26 10:00:29 2017 From: ksvs1996 на ymail.com (ksvs) Date: Wed, 26 Apr 2017 17:00:29 +0000 (UTC) Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493218634.2391.1@smtp.mail.ru> References: <1493218634.2391.1@smtp.mail.ru> Message-ID: <1986792.1504189.1493226029936@mail.yahoo.com> Слабый наброс. Особенно про количество элементов в массиве. Чтобы узнать его есть один способ: scalar @foo. A $#foo + 1 не всегда равно scalar @foo Настоящие проблемы не раскраты. On Wednesday, 26 April 2017, 19:01, Alexey Shrub via Moscow-pm wrote: Приветствую всех, для тех кто не читает хабр, мой небольшой наброс https://habrahabr.ru/post/327408/ -- Alexey Shrub mindstate.info -- Moscow.pm mailing list moscow-pm на pm.org | http://moscow.pm.org ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From agrishaev на gmail.com Wed Apr 26 10:15:58 2017 From: agrishaev на gmail.com (=?UTF-8?B?0KLQvtC70Y/QvSBJSQ==?=) Date: Wed, 26 Apr 2017 20:15:58 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493218634.2391.1@smtp.mail.ru> References: <1493218634.2391.1@smtp.mail.ru> Message-ID: Такое чувство, что на нем если и программировал, то наверно не долго и наверно не очень хорошо. 1) " чтобы писать на современном перле надо явно включать прагмы использования новых фич" 1.1) А если просто сказать <> и тогда все полезное подключиться. 1.2) В совсем не последнем перле можно даже написать perl -e 'say 42' и это даже отработает!!! 2) --- Тут наброс без существа Я не встречал динамического языка и нормальными тредами (haskell и подобные не пройдут) 3) можно даже без use strict; пишем use 5.016 и счастье. Про матчинг -- Запускаем ==== $str = 'Perl is good!!!'; $str=~m#Perl is (good)# and say substr($str,0,8) . $1; $str=~m#Perl is (bad)#i or say substr($str,0,8) . ($1 ||'good')."\n"; ==== 4) Ничего не скажу про eval - использовал только в виде $good = eval { ... }; Кстати он прекрасно цепляет my переменные. 5) Уже за меня сказали 6) if (grep $_ eq 'blabla', @arr) --- Это идеома 7) Мы используем mysql + собственный DateTime и вполне этим довольны :) 8) Совсем не по делу. 9) Не по делу Итого из всех 9 баллов можно едва натянуть только на 1.5 балла. Был бы ты на экзамене это был бы провал. 26 апреля 2017 г., 17:57 пользователь Alexey Shrub via Moscow-pm < moscow-pm на pm.org> написал: > Приветствую всех, > > для тех кто не читает хабр, мой небольшой наброс > https://habrahabr.ru/post/327408/ > > -- > Alexey Shrub > mindstate.info > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From ruslan.zakirov на gmail.com Wed Apr 26 10:42:26 2017 From: ruslan.zakirov на gmail.com (Ruslan Zakirov) Date: Wed, 26 Apr 2017 20:42:26 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493218634.2391.1@smtp.mail.ru> References: <1493218634.2391.1@smtp.mail.ru> Message-ID: Я тут по-программировал на python и поседел еще немного :) def foo(): done = false def on_done(): done = true ... ... Оно не работает. Надо писать так: def foo(): done = false def on_done(): nonlocal done done = true ... ... Ой, это только python3, а в python2: def foo(): done = [false] def on_done(): done[0] = true ... ... Что!?... А описание scope'инга переменных просто поражает... Набросить можно на любой язык. 2017-04-26 17:57 GMT+03:00 Alexey Shrub via Moscow-pm : > Приветствую всех, > > для тех кто не читает хабр, мой небольшой наброс > https://habrahabr.ru/post/327408/ > > -- > Alexey Shrub > mindstate.info > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > -- Best regards, Ruslan. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From me на spidamoo.ru Wed Apr 26 10:41:25 2017 From: me на spidamoo.ru (Vladimir Zatoloka) Date: Wed, 26 Apr 2017 19:41:25 +0200 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> Message-ID: <251751493228485@web24o.yandex.ru> Вложение в формате HTML было извлечено… URL: From an.gorohovski на gmail.com Wed Apr 26 11:47:22 2017 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Wed, 26 Apr 2017 21:47:22 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <251751493228485@web24o.yandex.ru> References: <1493218634.2391.1@smtp.mail.ru> <251751493228485@web24o.yandex.ru> Message-ID: 26 апреля 2017 г., 20:41 пользователь Vladimir Zatoloka via Moscow-pm < moscow-pm на pm.org> написал: > Закроем глаза на то, что большая часть статьи это личные предпочтения > и/или непонимание автором темы. Представим, что действительно перечислены > объективные недостатки языка (что бы ни скрывалось под этой загадочной > формулировкой). Все равно непонятно, зачем вообще статья написана? Сегодня > ты > ++; > пишешь, как ты писал на языке и он тебе не понравился, завтра напишешь, > как купил ботинки и они тебе трут? Какая польза этого текста для широкой > публики? > ++; По всей видимости, цель статьи --- сделать перекличку в рассылке :) Как мне представляется эволюция этого будет происходить в направлении: 2. "Почему я больше не хочу програмировать" 3. "Почему я больше не хочу" 4. "Почему я" 5. "Почему" 6. NULL ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From an.gorohovski на gmail.com Wed Apr 26 11:57:47 2017 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Wed, 26 Apr 2017 21:57:47 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> Message-ID: Это вы еще не пробовали пользовать сторонние модули этого Летающего Цирка. Вот там адское адище :) 26 апреля 2017 г., 20:42 пользователь Ruslan Zakirov via Moscow-pm < moscow-pm на pm.org> написал: > Я тут по-программировал на python и поседел еще немного :) > > def foo(): > done = false > def on_done(): > done = true > ... > ... > > Оно не работает. Надо писать так: > def foo(): > done = false > def on_done(): > nonlocal done > done = true > ... > ... > > Ой, это только python3, а в python2: > def foo(): > done = [false] > def on_done(): > done[0] = true > ... > ... > > Что!?... А описание scope'инга переменных просто поражает... > > Набросить можно на любой язык. > > 2017-04-26 17:57 GMT+03:00 Alexey Shrub via Moscow-pm : > >> Приветствую всех, >> >> для тех кто не читает хабр, мой небольшой наброс >> https://habrahabr.ru/post/327408/ >> >> -- >> Alexey Shrub >> mindstate.info >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> > > > > -- > Best regards, Ruslan. > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From iskhartakh на gmail.com Wed Apr 26 19:37:32 2017 From: iskhartakh на gmail.com (Anatoly Y.) Date: Thu, 27 Apr 2017 09:37:32 +0700 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493218634.2391.1@smtp.mail.ru> References: <1493218634.2391.1@smtp.mail.ru> Message-ID: Новых адептов итак хрен затащишь, да ещё вы “помогаете”. Зачем эта статья? > On 26 Apr 2017, at 21:57, Alexey Shrub via Moscow-pm wrote: > > Приветствую всех, > > для тех кто не читает хабр, мой небольшой наброс > https://habrahabr.ru/post/327408/ > > -- > Alexey Shrub > mindstate.info > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org From onokonem на gmail.com Thu Apr 27 01:11:28 2017 From: onokonem на gmail.com (Daniel Podolsky) Date: Thu, 27 Apr 2017 11:11:28 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> Message-ID: > Новых адептов итак хрен затащишь, да ещё вы “помогаете”. Зачем эта статья? эта статья (которую я лично не читал), как и весь хабр, для самопиара. но. какие новые адепты?! коллеги, ну отдайте себе уже отчет. все то, что было хорошего в perl, перестало быть актуально лет так 10 уже назад... From an.gorohovski на gmail.com Thu Apr 27 01:36:47 2017 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Thu, 27 Apr 2017 11:36:47 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> Message-ID: 27 апреля 2017 г., 11:11 пользователь Daniel Podolsky via Moscow-pm < moscow-pm на pm.org> написал: > > Новых адептов итак хрен затащишь, да ещё вы “помогаете”. Зачем эта > статья? > > эта статья (которую я лично не читал), как и весь хабр, для самопиара. > > но. какие новые адепты?! > > коллеги, ну отдайте себе уже отчет. > > все то, что было хорошего в perl, перестало быть актуально лет так 10 > уже назад... > Возможно, тут не в актуальности дело, просто всё, что на Perl сделано, как хорошая/добротная вещь --- работает "без шуму и пыли" до сих пор, а в современном мире одноразовых вещей --- это плохо и считается "застоем". Нужны, типа "*новации" --- "новые велосипеды", поэтому среди топ вакансий --- все новоязы: php, python, etc. а, к сожаления, Perl --- очень редко. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From pborissovster на gmail.com Thu Apr 27 02:41:57 2017 From: pborissovster на gmail.com (=?UTF-8?B?0J/QsNCy0LXQuyDQkdC+0YDQuNGB0L7Qsg==?=) Date: Thu, 27 Apr 2017 12:41:57 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> Message-ID: +100500 ! 27 апреля 2017 г., 11:36 пользователь Alessandro Gorohovski via Moscow-pm < moscow-pm на pm.org> написал: > > > 27 апреля 2017 г., 11:11 пользователь Daniel Podolsky via Moscow-pm < > moscow-pm на pm.org> написал: > >> > Новых адептов итак хрен затащишь, да ещё вы “помогаете”. Зачем эта >> статья? >> >> эта статья (которую я лично не читал), как и весь хабр, для самопиара. >> >> но. какие новые адепты?! >> >> коллеги, ну отдайте себе уже отчет. >> >> все то, что было хорошего в perl, перестало быть актуально лет так 10 >> уже назад... >> > > Возможно, тут не в актуальности дело, > просто всё, что на Perl сделано, как хорошая/добротная вещь --- работает > "без шуму и пыли" до сих пор, > а в современном мире одноразовых вещей --- это плохо и считается "застоем". > Нужны, типа "*новации" --- "новые велосипеды", > поэтому среди топ вакансий --- все новоязы: php, python, etc. > а, к сожаления, Perl --- очень редко. > > > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > -- -- С уважением, Борисов Павел программист ООО "Ф-Лайн Софтвер" ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From ksvs1996 на ymail.com Thu Apr 27 05:26:57 2017 From: ksvs1996 на ymail.com (ksvs) Date: Thu, 27 Apr 2017 12:26:57 +0000 (UTC) Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> Message-ID: <567762995.11303798.1493296017054@mail.yahoo.com> А как же развитие того, что сделано хорошо? Новый возможности? On Thursday, 27 April 2017, 11:37, Alessandro Gorohovski via Moscow-pm wrote: Возможно, тут не в актуальности дело, просто всё, что на Perl сделано, как хорошая/добротная вещь --- работает "без шуму и пыли" до сих пор, From an.gorohovski на gmail.com Thu Apr 27 06:41:33 2017 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Thu, 27 Apr 2017 16:41:33 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <567762995.11303798.1493296017054@mail.yahoo.com> References: <1493218634.2391.1@smtp.mail.ru> <567762995.11303798.1493296017054@mail.yahoo.com> Message-ID: 27 апреля 2017 г., 15:26 пользователь ksvs написал: > А как же развитие того, что сделано хорошо? Новый возможности? Удивительно и интересно. Встречный вопрос А разве Perl чем-либо ограничивает Вас в развитии ваших программ/проектов ? Мне представляется, что ограничения/комплексы чаще находятся в голове созидателя. On Thursday, 27 April 2017, 11:37, Alessandro Gorohovski via Moscow-pm < > moscow-pm на pm.org> wrote: > > > Возможно, тут не в актуальности дело, > просто всё, что на Perl сделано, как хорошая/добротная вещь --- работает > "без шуму и пыли" до сих пор, > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From worldmind на mail.ru Thu Apr 27 07:49:49 2017 From: worldmind на mail.ru (Alexey Shrub) Date: Thu, 27 Apr 2017 17:49:49 +0300 Subject: [Moscow.pm] =?koi8-r?b?/tXUz8sg0M/S1cfBzCDQxdLM?= In-Reply-To: References: Message-ID: <1493304589.1619.4@smtp.mail.ru> On Ср, апр 26, 2017 в 8:16 , Толян II via Moscow-pm wrote: > 2) --- Тут наброс без существа > Я не встречал динамического языка и > нормальными тредами (haskell и подобные > не пройдут) не очень понимаю о чём это, динамический это с динамической типизацией? Она мешает тредам? А если делать не треды, а "процессы" а-ля эрланг? From worldmind на mail.ru Thu Apr 27 07:51:31 2017 From: worldmind на mail.ru (Alexey Shrub) Date: Thu, 27 Apr 2017 17:51:31 +0300 Subject: [Moscow.pm] =?koi8-r?b?/tXUz8sg0M/S1cfBzCDQxdLM?= In-Reply-To: References: Message-ID: <1493304691.1619.5@smtp.mail.ru> On Ср, апр 26, 2017 в 8:16 , Толян II via Moscow-pm wrote: > Про матчинг -- Запускаем > ==== > $str = 'Perl is good!!!'; > $str=~m#Perl is (good)# and say substr($str,0,8) . $1; > $str=~m#Perl is (bad)#i or say substr($str,0,8) . ($1 > ||'good')."\n"; > ==== снова не понимаю что вы хотите сказать, да, иногда это работает правильно, и что из этого следует? Что подход с глобальными переменными хорош? From worldmind на mail.ru Thu Apr 27 07:53:57 2017 From: worldmind на mail.ru (Alexey Shrub) Date: Thu, 27 Apr 2017 17:53:57 +0300 Subject: [Moscow.pm] =?koi8-r?b?/tXUz8sg0M/S1cfBzCDQxdLM?= In-Reply-To: References: Message-ID: <1493304837.1619.6@smtp.mail.ru> On Ср, апр 26, 2017 в 8:16 , Толян II via Moscow-pm wrote: > 6) if (grep $_ eq 'blabla', @arr) --- Это идеома а этот "аргумент" столь силён, что просто нечего ответить, разве что можно сказать вашими же словами - "не по делу" From onokonem на gmail.com Thu Apr 27 08:01:53 2017 From: onokonem на gmail.com (Daniel Podolsky) Date: Thu, 27 Apr 2017 18:01:53 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <567762995.11303798.1493296017054@mail.yahoo.com> Message-ID: > А разве Perl чем-либо ограничивает Вас в развитии ваших программ/проектов > ? вообще-то - да, ограничивает. и, вроде, все в курсе, где и как. From dionys на gmail.com Thu Apr 27 08:42:48 2017 From: dionys на gmail.com (Denis Ibaev) Date: Thu, 27 Apr 2017 18:42:48 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493304691.1619.5@smtp.mail.ru> References: <1493304691.1619.5@smtp.mail.ru> Message-ID: 27 апреля 2017 г., 17:51 пользователь Alexey Shrub via Moscow-pm написал: > > снова не понимаю что вы хотите сказать, да, иногда это работает правильно, и > что из этого следует? Что подход с глобальными переменными хорош? > Чем он плох? -- Денис Ибаев From ksvs1996 на ymail.com Thu Apr 27 10:39:20 2017 From: ksvs1996 на ymail.com (ksvs) Date: Thu, 27 Apr 2017 17:39:20 +0000 (UTC) Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <567762995.11303798.1493296017054@mail.yahoo.com> Message-ID: <2003625254.11644325.1493314760563@mail.yahoo.com> А разве разговор как раз не про проекты? Цитирую: "всё, что на Perl сделано". Я так понял, что то, что сделано на Perl, работает хорошо и стабильно. Обратная совместимость. Решили добавить на основе сушуствующего проекта сделать что-то большие, а новый людей не набрать... Или не так понял? On Thursday, 27 April 2017, 16:41, Alessandro Gorohovski wrote: 27 апреля 2017 г., 15:26 пользователь ksvs написал: А как же развитие того, что сделано хорошо? Новый возможности? Удивительно и интересно. Встречный вопрос А разве Perl чем-либо ограничивает Вас в развитии ваших программ/проектов ? Мне представляется, что ограничения/комплексы чаще находятся в голове созидателя. On Thursday, 27 April 2017, 11:37, Alessandro Gorohovski via Moscow-pm wrote: > > >Возможно, тут не в актуальности дело, >просто всё, что на Perl сделано, как хорошая/добротная вещь --- работает "без шуму и пыли" до сих пор, From onokonem на gmail.com Thu Apr 27 10:47:27 2017 From: onokonem на gmail.com (Daniel Podolsky) Date: Thu, 27 Apr 2017 20:47:27 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <2003625254.11644325.1493314760563@mail.yahoo.com> References: <1493218634.2391.1@smtp.mail.ru> <567762995.11303798.1493296017054@mail.yahoo.com> <2003625254.11644325.1493314760563@mail.yahoo.com> Message-ID: > Решили добавить на основе сушуствующего проекта сделать что-то большие, а новый людей не набрать... пока - набрать. перл прикольный язык, до сих пор привлекает адептов... но! 1. по техническим причинам писать новую систему на перле смысла нет 2. это означает, что вся работа, которая есть на перле - это мерзкое легаси. From agrishaev на gmail.com Thu Apr 27 12:21:49 2017 From: agrishaev на gmail.com (=?UTF-8?B?0KLQvtC70Y/QvSBJSQ==?=) Date: Thu, 27 Apr 2017 22:21:49 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493304691.1619.5@smtp.mail.ru> References: <1493304691.1619.5@smtp.mail.ru> Message-ID: Ровно хотел сказать, что в этом случае глобальные переменные жизнь не портят. А пример когда вам от этого сильно плохо стало, можете привести применительно к матчингу. А если говорить применительно к js там приходиться каждый раз вспоминать где лежит $1 в [0] или [1], как называется тот метод которым этот матчинг вызывается и кучу дополнительных вещей к делу не относящихся. А поскольку regex-ы я пишу редко и регулярно это доставляет перманентную боль в отличие от перла. И я готов даже готов закрыть глаза на глобальность $1 и ... это мне проблем не доставляет. Поэтому я не понимаю в чем суть Вашей проблемы с глобальностью $1, $2 и . 27 апреля 2017 г., 17:51 пользователь Alexey Shrub via Moscow-pm < moscow-pm на pm.org> написал: > On Ср, апр 26, 2017 в 8:16 , Толян II via Moscow-pm > wrote: > >> Про матчинг -- Запускаем >> ==== >> $str = 'Perl is good!!!'; >> $str=~m#Perl is (good)# and say substr($str,0,8) . $1; >> $str=~m#Perl is (bad)#i or say substr($str,0,8) . ($1 ||'good')."\n"; >> ==== >> > > снова не понимаю что вы хотите сказать, да, иногда это работает правильно, > и что из этого следует? Что подход с глобальными переменными хорош? > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From worldmind на mail.ru Thu Apr 27 12:32:50 2017 From: worldmind на mail.ru (Alexey Shrub) Date: Thu, 27 Apr 2017 22:32:50 +0300 Subject: [Moscow.pm] =?koi8-r?b?/tXUz8sg0M/S1cfBzCDQxdLM?= In-Reply-To: References: Message-ID: <1493321570.1619.8@smtp.mail.ru> On Чт, апр 27, 2017 в 10:21 , Толян II via Moscow-pm wrote: > А пример когда вам от этого сильно > плохо стало, можете привести > применительно к матчингу. Это же стандартная грабля - не проверяешь результат матчинга, а пользуешь/проверяешь $1, а там вдруг результат предыдущего матчинга. Когда-то очень давно я на неё наступил, долго дебажил пытаясь понять что не так, а когда понял хорошо запомнил. И так грабля за граблёй совершенствуется перловик. From agrishaev на gmail.com Thu Apr 27 12:33:24 2017 From: agrishaev на gmail.com (=?UTF-8?B?0KLQvtC70Y/QvSBJSQ==?=) Date: Thu, 27 Apr 2017 22:33:24 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <567762995.11303798.1493296017054@mail.yahoo.com> <2003625254.11644325.1493314760563@mail.yahoo.com> Message-ID: > 2. это означает, что вся работа, которая есть на перле - это мерзкое легаси. Ну точно не "вся" и моя по крайней мере точно. И основная в этом заслуга нашего техдира, который умудряется нашими руками улучшать качество кода. А если за этим не следить, то да качество постоянно деградирует... > 1. по техническим причинам писать новую систему на перле смысла нет Может не в тему, но что пишем и почему нет смысла? 27 апреля 2017 г., 20:47 пользователь Daniel Podolsky via Moscow-pm < moscow-pm на pm.org> написал: > > Решили добавить на основе сушуствующего проекта сделать что-то большие, > а новый людей не набрать... > > пока - набрать. перл прикольный язык, до сих пор привлекает адептов... > > но! > > 1. по техническим причинам писать новую систему на перле смысла нет > 2. это означает, что вся работа, которая есть на перле - это мерзкое > легаси. > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From agrishaev на gmail.com Thu Apr 27 12:37:21 2017 From: agrishaev на gmail.com (=?UTF-8?B?0KLQvtC70Y/QvSBJSQ==?=) Date: Thu, 27 Apr 2017 22:37:21 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493321570.1619.8@smtp.mail.ru> References: <1493321570.1619.8@smtp.mail.ru> Message-ID: Так я привел вариант с матчингом аналогичный твоему и твое наблюдение на нем не повторяется. ​ ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From worldmind на mail.ru Thu Apr 27 12:48:18 2017 From: worldmind на mail.ru (Alexey Shrub) Date: Thu, 27 Apr 2017 22:48:18 +0300 Subject: [Moscow.pm] =?koi8-r?b?/tXUz8sg0M/S1cfBzCDQxdLM?= In-Reply-To: References: Message-ID: <1493322498.1619.9@smtp.mail.ru> On Чт, апр 27, 2017 в 10:37 , Толян II via Moscow-pm wrote: > Так я привел вариант с матчингом > аналогичный твоему и твое наблюдение > на нем не повторяется. Уж даже не знаю что сказать, попробую повторить другими словами - да, эту проблему можно решить и да в перле есть несколько способов решить эту проблему, можно сделать if, можно написать как выражение, можно локализовать переменные и наверно есть ещё с десяток способов. Я не говорил что решения нет, я говорю, что проблема есть и надо не забывать её как-то решать, нужно держать лишние знания в голове когда пишешь код с глобальными переменными. Глобальные переменные это большой источник ошибок во всех языках, я думал это общепризнано и общеизвестно. From asan999 на gmail.com Thu Apr 27 12:55:03 2017 From: asan999 на gmail.com (Asyakin Andrey) Date: Thu, 27 Apr 2017 22:55:03 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493321570.1619.8@smtp.mail.ru> References: <1493321570.1619.8@smtp.mail.ru> Message-ID: <20170427195503.GA13866@asan13> Я бы сказал, что это фича, оптимизация. Дабы не зачищать переменные при каждом поиске. Не такая и стандартная это грабля, при корявом коде если только стандарнтая) Не надо так писать, вот и все: $s =~ /(.)/; if ($1) { On Thu, Apr 27, 2017 at 10:32:50PM +0300, Alexey Shrub via Moscow-pm wrote: > On Чт, апр 27, 2017 в 10:21 , Толян II via Moscow-pm > wrote: > > А пример когда вам от этого сильно плохо стало, можете привести > > применительно к матчингу. > > Это же стандартная грабля - не проверяешь результат матчинга, а > пользуешь/проверяешь $1, а там вдруг результат предыдущего матчинга. > Когда-то очень давно я на неё наступил, долго дебажил пытаясь понять что не > так, а когда понял хорошо запомнил. > И так грабля за граблёй совершенствуется перловик. > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org From alexandre на frolov.pp.ru Thu Apr 27 12:58:45 2017 From: alexandre на frolov.pp.ru (=?utf-8?B?0JDQu9C10LrRgdCw0L3QtNGAINCk0YDQvtC70L7Qsg==?=) Date: Thu, 27 Apr 2017 22:58:45 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493218634.2391.1@smtp.mail.ru> References: <1493218634.2391.1@smtp.mail.ru> Message-ID: <003501d2bf90$ae0a4470$0a1ecd50$@frolov.pp.ru> Тоже ответил на Хабре. Мы более 10 лет делаем SAAS-сервис интернет-магазинов на Perl, и не жалеем о выборе платформы. Вот от FreeBSD приходится отказываться в пользу Debian, да... С уважением, Управляющий директор ООО "АйТи-Матрикс" Александр Фролов alexandre на frolov.pp.ru www.shop2you.ru --------------------------------------------------- Пожалуйста, при ответе сохраняйте историю переписки. -----Original Message----- From: Moscow-pm [mailto:moscow-pm-bounces+alexandre=frolov.pp.ru на pm.org] On Behalf Of Alexey Shrub via Moscow-pm Sent: Wednesday, April 26, 2017 5:57 PM To: Moscow.pm group Cc: Alexey Shrub Subject: [Moscow.pm] Чуток поругал перл Приветствую всех, для тех кто не читает хабр, мой небольшой наброс https://habrahabr.ru/post/327408/ -- Alexey Shrub mindstate.info -- Moscow.pm mailing list moscow-pm на pm.org | http://moscow.pm.org From agrishaev на gmail.com Thu Apr 27 13:14:49 2017 From: agrishaev на gmail.com (=?UTF-8?B?0KLQvtC70Y/QvSBJSQ==?=) Date: Thu, 27 Apr 2017 23:14:49 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493322498.1619.9@smtp.mail.ru> References: <1493322498.1619.9@smtp.mail.ru> Message-ID: Так сложно привести пример "этой" проблемы??? Кстати если не в курсе все константы это глобальные переменные по сути, но от них никто не собирается отказываться. > Глобальные переменные это большой источник ошибок во всех языках, я думал это общепризнано и общеизвестно. К сожалению моя практика этого не подтверждает --- в коде с которым я работаю (он не мой) ошибок от глобальности была может быть пара за пару лет, а вот других ошибок хватало. с избытке. И да глобальные переменные наблюдаются в товарном количестве(не константы). Я бы посоветовал к "общепризнанным и общеизвестным" относиться со здоровым скептицизмом. Без деталей разговаривать не о чем. Сделал бы доклад, как делать не надо, и как с этим жить, и мы бы твоим опытом обогатились и тебе было бы полезно. 27 апреля 2017 г., 22:48 пользователь Alexey Shrub via Moscow-pm < moscow-pm на pm.org> написал: > On Чт, апр 27, 2017 в 10:37 , Толян II via Moscow-pm > wrote: > >> Так я привел вариант с матчингом аналогичный твоему и твое наблюдение на >> нем не повторяется. >> > > Уж даже не знаю что сказать, попробую повторить другими словами - да, эту > проблему можно решить и да в перле есть несколько способов решить эту > проблему, можно сделать if, можно написать как выражение, можно > локализовать переменные и наверно есть ещё с десяток способов. > Я не говорил что решения нет, я говорю, что проблема есть и надо не > забывать её как-то решать, нужно держать лишние знания в голове когда > пишешь код с глобальными переменными. > Глобальные переменные это большой источник ошибок во всех языках, я думал > это общепризнано и общеизвестно. > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From qalexx на gmail.com Thu Apr 27 14:03:26 2017 From: qalexx на gmail.com (Alexander Q) Date: Thu, 27 Apr 2017 21:03:26 +0000 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493322498.1619.9@smtp.mail.ru> Message-ID: > Кстати если не в курсе все константы это глобальные переменные по сути Нет, переменные могут меняться, константы нет. Собственно, это основная претензия к глобальным переменным: они могут меняться потому что переменные, откуда угодно (следовательно, непредсказуемо) потому что глобальные. On Thu, Apr 27, 2017 at 11:16 PM Толян II via Moscow-pm wrote: > Так сложно привести пример "этой" проблемы??? > > Кстати если не в курсе все константы это глобальные переменные по сути, но > от них никто не собирается отказываться. > > > Глобальные переменные это большой источник ошибок во всех языках, я > думал это общепризнано и общеизвестно. > > К сожалению моя практика этого не подтверждает --- в коде с которым я > работаю (он не мой) ошибок от глобальности была может быть пара за пару > лет, > а вот других ошибок хватало. > с избытке. И да глобальные переменные наблюдаются в товарном количестве(не > константы). > > Я бы посоветовал к "общепризнанным и общеизвестным" относиться со здоровым > скептицизмом. > Без деталей разговаривать не о чем. > > Сделал бы доклад, как делать не надо, и как с этим жить, и мы бы твоим > опытом обогатились и тебе было бы полезно. > > > > 27 апреля 2017 г., 22:48 пользователь Alexey Shrub via Moscow-pm < > moscow-pm на pm.org> написал: > > On Чт, апр 27, 2017 в 10:37 , Толян II via Moscow-pm >> wrote: >> >>> Так я привел вариант с матчингом аналогичный твоему и твое наблюдение на >>> нем не повторяется. >>> >> >> Уж даже не знаю что сказать, попробую повторить другими словами - да, эту >> проблему можно решить и да в перле есть несколько способов решить эту >> проблему, можно сделать if, можно написать как выражение, можно >> локализовать переменные и наверно есть ещё с десяток способов. >> Я не говорил что решения нет, я говорю, что проблема есть и надо не >> забывать её как-то решать, нужно держать лишние знания в голове когда >> пишешь код с глобальными переменными. >> Глобальные переменные это большой источник ошибок во всех языках, я думал >> это общепризнано и общеизвестно. >> >> -- >> Moscow.pm mailing list >> moscow-pm на pm.org | http://moscow.pm.org >> > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From onokonem на gmail.com Thu Apr 27 14:23:29 2017 From: onokonem на gmail.com (Daniel Podolsky) Date: Fri, 28 Apr 2017 00:23:29 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <567762995.11303798.1493296017054@mail.yahoo.com> <2003625254.11644325.1493314760563@mail.yahoo.com> Message-ID: > Может не в тему, но что пишем и почему нет смысла? а что ни пиши - проблемы все те же три: 1. нет возможности утилизировать несколько ядер в рамках одного процесса. 2. нет семплирующего профайлера. этот, кстати, мог бы уже и быть - вроде бы, последний perl5 использует стандартный стек. но - нетути. 3. нет JIT учитывая, что все это очень, реально очень нужно современному проекту - делать его на перле нет никакого смысла. аминь. From dionys на gmail.com Thu Apr 27 14:23:41 2017 From: dionys на gmail.com (Denis Ibaev) Date: Fri, 28 Apr 2017 00:23:41 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493322498.1619.9@smtp.mail.ru> Message-ID: 28 апреля 2017 г., 0:03 пользователь Alexander Q via Moscow-pm написал: >> Кстати если не в курсе все константы это глобальные переменные по сути > > Нет, переменные могут меняться, константы нет. Собственно, это основная > претензия к глобальным переменным: они могут меняться потому что переменные, > откуда угодно (следовательно, непредсказуемо) потому что глобальные. Если вернуться к контексту обсуждения, то переменные $n, во-первых, только для чтения, и во-вторых, имеют динамическую область видимости. Так что вот прям откуда угодно их не поменяешь. -- Денис Ибаев From ksvs1996 на ymail.com Thu Apr 27 20:22:04 2017 From: ksvs1996 на ymail.com (ksvs) Date: Fri, 28 Apr 2017 03:22:04 +0000 (UTC) Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <567762995.11303798.1493296017054@mail.yahoo.com> <2003625254.11644325.1493314760563@mail.yahoo.com> Message-ID: <1761897527.146000.1493349724152@mail.yahoo.com> А для каких задач нужна утилизация несколько ядер в рамках одного процесса? Перловых задач. Для Web сервера, по моему не нужно. On Friday, 28 April 2017, 0:23, Daniel Podolsky via Moscow-pm wrote: > Может не в тему, но что пишем и почему нет смысла? а что ни пиши - проблемы все те же три: 1. нет возможности утилизировать несколько ядер в рамках одного процесса. 2. нет семплирующего профайлера. этот, кстати, мог бы уже и быть - вроде бы, последний perl5 использует стандартный стек. но - нетути. 3. нет JIT учитывая, что все это очень, реально очень нужно современному проекту - делать его на перле нет никакого смысла. аминь. -- Moscow.pm mailing list moscow-pm на pm.org | http://moscow.pm.org From ksvs1996 на ymail.com Thu Apr 27 20:22:59 2017 From: ksvs1996 на ymail.com (ksvs) Date: Fri, 28 Apr 2017 03:22:59 +0000 (UTC) Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <003501d2bf90$ae0a4470$0a1ecd50$@frolov.pp.ru> References: <1493218634.2391.1@smtp.mail.ru> <003501d2bf90$ae0a4470$0a1ecd50$@frolov.pp.ru> Message-ID: <1320365222.168167.1493349779516@mail.yahoo.com> А что с FreeBSD не так? On Thursday, 27 April 2017, 23:04, Александр Фролов via Moscow-pm wrote: Тоже ответил на Хабре. Мы более 10 лет делаем SAAS-сервис интернет-магазинов на Perl, и не жалеем о выборе платформы. Вот от FreeBSD приходится отказываться в пользу Debian, да... С уважением, Управляющий директор ООО "АйТи-Матрикс" Александр Фролов alexandre на frolov.pp.ru www.shop2you.ru --------------------------------------------------- Пожалуйста, при ответе сохраняйте историю переписки. -----Original Message----- From: Moscow-pm [mailto:moscow-pm-bounces+alexandre=frolov.pp.ru на pm.org] On Behalf Of Alexey Shrub via Moscow-pm Sent: Wednesday, April 26, 2017 5:57 PM To: Moscow.pm group Cc: Alexey Shrub Subject: [Moscow.pm] Чуток поругал перл Приветствую всех, для тех кто не читает хабр, мой небольшой наброс https://habrahabr.ru/post/327408/ -- Alexey Shrub mindstate.info -- Moscow.pm mailing list moscow-pm на pm.org | http://moscow.pm.org -- Moscow.pm mailing list moscow-pm на pm.org | http://moscow.pm.org From ilvin на mail.ru Fri Apr 28 03:57:49 2017 From: ilvin на mail.ru (=?UTF-8?B?0JjQu9GM0Y8g0JLQuNC90L7QutGD0YDQvtCy?=) Date: Fri, 28 Apr 2017 13:57:49 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> Message-ID: <1493377069.616076341@f173.i.mail.ru> Здравствуйуте, коллеги! >Пятница, 28 апреля 2017, 0:24 +03:00 от Daniel Podolsky via Moscow-pm : > >> Может не в тему, но что пишем и почему нет смысла? > >а что ни пиши - проблемы все те же три: > >1. нет возможности утилизировать несколько ядер в рамках одного процесса. >2. нет семплирующего профайлера. этот, кстати, мог бы уже и быть - >вроде бы, последний perl5 использует стандартный стек. но - нетути. >3. нет JIT PHP 7 смог значительно ускориться и без JIT. По большому счету и обычного компилятора хватит... А вот проблема все же есть - Perl не умеет возвращать в систему аллоцированную память... С почтением,   Илья Винокуров. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From an.gorohovski на gmail.com Fri Apr 28 06:07:18 2017 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Fri, 28 Apr 2017 16:07:18 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493377069.616076341@f173.i.mail.ru> References: <1493218634.2391.1@smtp.mail.ru> <1493377069.616076341@f173.i.mail.ru> Message-ID: 28 апреля 2017 г., 13:57 пользователь Илья Винокуров via Moscow-pm < moscow-pm на pm.org> написал: > Здравствуйуте, коллеги! > > Пятница, 28 апреля 2017, 0:24 +03:00 от Daniel Podolsky via Moscow-pm < > moscow-pm на pm.org>: > > > Может не в тему, но что пишем и почему нет смысла? > > а что ни пиши - проблемы все те же три: > > 1. нет возможности утилизировать несколько ядер в рамках одного процесса. > 2. нет семплирующего профайлера. этот, кстати, мог бы уже и быть - > вроде бы, последний perl5 использует стандартный стек. но - нетути. > 3. нет JIT > > > PHP 7 смог значительно ускориться и без JIT. > > По большому счету и обычного компилятора хватит... > > А вот проблема все же есть - Perl не умеет возвращать в систему > аллоцированную память... > > Интересно, а почему Вы так решили? Это странно, что, по завершению выполнения perl-скриптов, в систему не возвращается память? > С почтением, > Илья Винокуров. > С уважением, Александр. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From dim0xff на gmail.com Fri Apr 28 06:37:52 2017 From: dim0xff на gmail.com (Dmitry L.) Date: Fri, 28 Apr 2017 16:37:52 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <1493377069.616076341@f173.i.mail.ru> Message-ID: 2017-04-28 16:07 GMT+03:00 Alessandro Gorohovski via Moscow-pm : > Интересно, а почему Вы так решили? > Это странно, что, по завершению выполнения perl-скриптов, в систему не > возвращается память? > Вы серьёзно сейчас? -- //wbr, Dmitry L. From an.gorohovski на gmail.com Fri Apr 28 07:32:58 2017 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Fri, 28 Apr 2017 17:32:58 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <1493377069.616076341@f173.i.mail.ru> Message-ID: 28 апреля 2017 г., 16:37 пользователь Dmitry L. via Moscow-pm < moscow-pm на pm.org> написал: > 2017-04-28 16:07 GMT+03:00 Alessandro Gorohovski via Moscow-pm > : > > Интересно, а почему Вы так решили? > > Это странно, что, по завершению выполнения perl-скриптов, в систему не > > возвращается память? > > > > Вы серьёзно сейчас? > > Абсолютно. Например, у меня есть сервер с Uptime: 501 day(!) на котором каждый день отрабатывает как минимум 10k perl-скриптов. Почему сервер жив, т.е. не исчерпалась память? Да, swap практически не используется (занято 0.06%) ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From ilvin на mail.ru Fri Apr 28 09:00:11 2017 From: ilvin на mail.ru (=?UTF-8?B?0JjQu9GM0Y8g0JLQuNC90L7QutGD0YDQvtCy?=) Date: Fri, 28 Apr 2017 19:00:11 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <1493377069.616076341@f173.i.mail.ru> Message-ID: <1493395211.936442346@f395.i.mail.ru> Здравствуйте, Александр! >Пятница, 28 апреля 2017, 16:07 +03:00 от Alessandro Gorohovski : > >28 апреля 2017 г., 13:57 пользователь Илья Винокуров via Moscow-pm < moscow-pm на pm.org > написал: >>Здравствуйуте, коллеги! >> >>>Пятница, 28 апреля 2017, 0:24 +03:00 от Daniel Podolsky via Moscow-pm < moscow-pm на pm.org >: >>> >>>> Может не в тему, но что пишем и почему нет смысла? >>> >>>а что ни пиши - проблемы все те же три: >>> >>>1. нет возможности утилизировать несколько ядер в рамках одного процесса. >>>2. нет семплирующего профайлера. этот, кстати, мог бы уже и быть - >>>вроде бы, последний perl5 использует стандартный стек. но - нетути. >>>3. нет JIT >>PHP 7 смог значительно ускориться и без JIT. >> >>По большому счету и обычного компилятора хватит... >> >>А вот проблема все же есть - Perl не умеет возвращать в систему аллоцированную память... >> >Интересно, а почему Вы так решили?   >Это странно, что, по завершению выполнения perl-скриптов, в систему не возвращается память? Я не говорил про завершение работы скрипта - это вы придумали. Я имел в виду в процессе работы . Освободившуюся память перл не возвращает системе, но повторно использует по необходимости. >>С почтением, >>  Илья Винокуров. > >С уважением, >Александр. > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From an.gorohovski на gmail.com Fri Apr 28 09:16:04 2017 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Fri, 28 Apr 2017 19:16:04 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493395211.936442346@f395.i.mail.ru> References: <1493218634.2391.1@smtp.mail.ru> <1493377069.616076341@f173.i.mail.ru> <1493395211.936442346@f395.i.mail.ru> Message-ID: Илья, Здравствуйте! 28 апреля 2017 г., 19:00 пользователь Илья Винокуров via Moscow-pm < moscow-pm на pm.org> написал: > Здравствуйте, Александр! > > Пятница, 28 апреля 2017, 16:07 +03:00 от Alessandro Gorohovski < > an.gorohovski на gmail.com>: > > 28 апреля 2017 г., 13:57 пользователь Илья Винокуров via Moscow-pm < > moscow-pm на pm.org> написал: > > Здравствуйуте, коллеги! > > Пятница, 28 апреля 2017, 0:24 +03:00 от Daniel Podolsky via Moscow-pm < > moscow-pm на pm.org>: > > > Может не в тему, но что пишем и почему нет смысла? > > а что ни пиши - проблемы все те же три: > > 1. нет возможности утилизировать несколько ядер в рамках одного процесса. > 2. нет семплирующего профайлера. этот, кстати, мог бы уже и быть - > вроде бы, последний perl5 использует стандартный стек. но - нетути. > 3. нет JIT > > > PHP 7 смог значительно ускориться и без JIT. > > По большому счету и обычного компилятора хватит... > > А вот проблема все же есть - Perl не умеет возвращать в систему > аллоцированную память... > > Интересно, а почему Вы так решили? > Это странно, что, по завершению выполнения perl-скриптов, в систему не > возвращается память? > > > Я не говорил про *завершение* работы скрипта - это вы придумали. > > Я имел в виду в *процессе работы*. > Ладно, не оправдывайтесь, "у меня все ходы записаны" :) Освободившуюся память перл не возвращает системе, но повторно использует по > необходимости. > А куда он (Perl) её девает? Вы рассуждаете так, будто Perl этот какой то процесс/сервис/демон, постоянно работающий в системе. Проблему искусственно не надо надумывать. Получается сотни тысяч (если не больше) систем по миру работают и не знают о страшных проблемах. С почтением, > Илья Винокуров. > > > С уважением, > Александр. > > > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From scripter.vrn на gmail.com Fri Apr 28 14:10:31 2017 From: scripter.vrn на gmail.com (=?UTF-8?B?0JLQsNC00LjQvCDQktC70LDRgdC+0LI=?=) Date: Sat, 29 Apr 2017 00:10:31 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <1493377069.616076341@f173.i.mail.ru> <1493395211.936442346@f395.i.mail.ru> Message-ID: Вы не поверите, но у многих на перле именно что демоны и написаны. И то что перл не возвращает системе память - это проблема, да. 28 апр. 2017 г. 19:16 пользователь "Alessandro Gorohovski via Moscow-pm" < moscow-pm на pm.org> написал: Илья, Здравствуйте! 28 апреля 2017 г., 19:00 пользователь Илья Винокуров via Moscow-pm < moscow-pm на pm.org> написал: Здравствуйте, Александр! > > Пятница, 28 апреля 2017, 16:07 +03:00 от Alessandro Gorohovski < > an.gorohovski на gmail.com>: > > 28 апреля 2017 г., 13:57 пользователь Илья Винокуров via Moscow-pm < > moscow-pm на pm.org> написал: > > Здравствуйуте, коллеги! > > Пятница, 28 апреля 2017, 0:24 +03:00 от Daniel Podolsky via Moscow-pm < > moscow-pm на pm.org>: > > > Может не в тему, но что пишем и почему нет смысла? > > а что ни пиши - проблемы все те же три: > > 1. нет возможности утилизировать несколько ядер в рамках одного процесса. > 2. нет семплирующего профайлера. этот, кстати, мог бы уже и быть - > вроде бы, последний perl5 использует стандартный стек. но - нетути. > 3. нет JIT > > > PHP 7 смог значительно ускориться и без JIT. > > По большому счету и обычного компилятора хватит... > > А вот проблема все же есть - Perl не умеет возвращать в систему > аллоцированную память... > > Интересно, а почему Вы так решили? > Это странно, что, по завершению выполнения perl-скриптов, в систему не > возвращается память? > > > Я не говорил про *завершение* работы скрипта - это вы придумали. > > Я имел в виду в *процессе работы*. > Ладно, не оправдывайтесь, "у меня все ходы записаны" :) Освободившуюся память перл не возвращает системе, но повторно использует по > необходимости. > А куда он (Perl) её девает? Вы рассуждаете так, будто Perl этот какой то процесс/сервис/демон, постоянно работающий в системе. Проблему искусственно не надо надумывать. Получается сотни тысяч (если не больше) систем по миру работают и не знают о страшных проблемах. С почтением, > Илья Винокуров. > > > С уважением, > Александр. > > > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > > -- Moscow.pm mailing list moscow-pm на pm.org | http://moscow.pm.org ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From an.gorohovski на gmail.com Fri Apr 28 23:11:36 2017 From: an.gorohovski на gmail.com (Alessandro Gorohovski) Date: Sat, 29 Apr 2017 09:11:36 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <1493377069.616076341@f173.i.mail.ru> <1493395211.936442346@f395.i.mail.ru> Message-ID: 29 апреля 2017 г., 0:10 пользователь Вадим Власов via Moscow-pm < moscow-pm на pm.org> написал: > Вы не поверите, но у многих на перле именно что демоны и написаны. И то > что перл не возвращает системе память - это проблема, да. > Вы не поверите, но я поверю Вам. Но нут проблемы нет. Если что-то не устраивает в работе скрипта, значит, надо поразмышлять и изменить его так, чтобы устраивало. Тем более, что в Perl можно сделать более, чем одним способом, чего нет у других. ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: From victor на vsespb.ru Fri Apr 28 23:39:53 2017 From: victor на vsespb.ru (Victor Efimov) Date: Sat, 29 Apr 2017 09:39:53 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: <1493395211.936442346@f395.i.mail.ru> References: <1493218634.2391.1@smtp.mail.ru> <1493377069.616076341@f173.i.mail.ru> <1493395211.936442346@f395.i.mail.ru> Message-ID: 28 апреля 2017 г., 19:00 пользователь Илья Винокуров via Moscow-pm написал: > Здравствуйте, Александр! > > Пятница, 28 апреля 2017, 16:07 +03:00 от Alessandro Gorohovski > : > > 28 апреля 2017 г., 13:57 пользователь Илья Винокуров via Moscow-pm > написал: > > Здравствуйуте, коллеги! > > Пятница, 28 апреля 2017, 0:24 +03:00 от Daniel Podolsky via Moscow-pm > : > >> Может не в тему, но что пишем и почему нет смысла? > > а что ни пиши - проблемы все те же три: > > 1. нет возможности утилизировать несколько ядер в рамках одного процесса. > 2. нет семплирующего профайлера. этот, кстати, мог бы уже и быть - > вроде бы, последний perl5 использует стандартный стек. но - нетути. > 3. нет JIT > > > PHP 7 смог значительно ускориться и без JIT. > > По большому счету и обычного компилятора хватит... > > А вот проблема все же есть - Perl не умеет возвращать в систему > аллоцированную память... > > Интересно, а почему Вы так решили? > Это странно, что, по завершению выполнения perl-скриптов, в систему не > возвращается память? > > > Я не говорил про завершение работы скрипта - это вы придумали. > > Я имел в виду в процессе работы. > > Освободившуюся память перл не возвращает системе, но повторно использует по > необходимости. > известная штука, но если не читать в память блобы по гигабайту, то реальных проблем нет. просто при чтении очень больших данных читайте и обрабатывайте их по кускам. приведите кейз где от такого поведения возникают реальные проблемы? и кстати какой язык возвращает память системе? я просто не в курсе, ибо при "нормальном" программировании на это не наткнёшься, и в перле то наткнулся когда писал скрипты "на коленке" которые делают что-то не нормальное. > С почтением, > Илья Винокуров. > > > С уважением, > Александр. > > > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > From akzhan.abdulin на gmail.com Fri Apr 28 23:52:32 2017 From: akzhan.abdulin на gmail.com (Akzhan Abdulin) Date: Sat, 29 Apr 2017 09:52:32 +0300 Subject: [Moscow.pm] =?utf-8?b?0KfRg9GC0L7QuiDQv9C+0YDRg9Cz0LDQuyDQv9C1?= =?utf-8?b?0YDQuw==?= In-Reply-To: References: <1493218634.2391.1@smtp.mail.ru> <1493377069.616076341@f173.i.mail.ru> <1493395211.936442346@f395.i.mail.ru> Message-ID: А зачем возвращать память системе? Она же потом еще пригодится. Почти шутка :-) 29 апреля 2017 г., 9:39 пользователь Victor Efimov via Moscow-pm < moscow-pm на pm.org> написал: > 28 апреля 2017 г., 19:00 пользователь Илья Винокуров via Moscow-pm > написал: > > Здравствуйте, Александр! > > > > Пятница, 28 апреля 2017, 16:07 +03:00 от Alessandro Gorohovski > > : > > > > 28 апреля 2017 г., 13:57 пользователь Илья Винокуров via Moscow-pm > > написал: > > > > Здравствуйуте, коллеги! > > > > Пятница, 28 апреля 2017, 0:24 +03:00 от Daniel Podolsky via Moscow-pm > > : > > > >> Может не в тему, но что пишем и почему нет смысла? > > > > а что ни пиши - проблемы все те же три: > > > > 1. нет возможности утилизировать несколько ядер в рамках одного процесса. > > 2. нет семплирующего профайлера. этот, кстати, мог бы уже и быть - > > вроде бы, последний perl5 использует стандартный стек. но - нетути. > > 3. нет JIT > > > > > > PHP 7 смог значительно ускориться и без JIT. > > > > По большому счету и обычного компилятора хватит... > > > > А вот проблема все же есть - Perl не умеет возвращать в систему > > аллоцированную память... > > > > Интересно, а почему Вы так решили? > > Это странно, что, по завершению выполнения perl-скриптов, в систему не > > возвращается память? > > > > > > Я не говорил про завершение работы скрипта - это вы придумали. > > > > Я имел в виду в процессе работы. > > > > Освободившуюся память перл не возвращает системе, но повторно использует > по > > необходимости. > > > > известная штука, но если не читать в память блобы по гигабайту, то > реальных проблем нет. > просто при чтении очень больших данных читайте и обрабатывайте их по > кускам. > > приведите кейз где от такого поведения возникают реальные проблемы? и > кстати какой язык возвращает память системе? > я просто не в курсе, ибо при "нормальном" программировании на это не > наткнёшься, и в перле то наткнулся когда писал скрипты "на коленке" > которые делают что-то не нормальное. > > > С почтением, > > Илья Винокуров. > > > > > > С уважением, > > Александр. > > > > > > > > -- > > Moscow.pm mailing list > > moscow-pm на pm.org | http://moscow.pm.org > > > -- > Moscow.pm mailing list > moscow-pm на pm.org | http://moscow.pm.org > ----------- следущая часть ----------- Вложение в формате HTML было извлечено… URL: