[Moscow.pm] Fwd: Почему меняется старое значение, хотя переменная локализирована?

2016-01-06 Пенетрантность KES
День добрый.
Локализация $DB::single работает без проблем, но если брать ссылку на неё, то 
возникают проблемы:
The localization of $DB::single works fine, but the reference to it does not 
work:
{
$DB::single = 7; my $x = \$DB::single;
print "Before: ". \$DB::single ." <<$x $$x\n";
local $DB::single = 0;
print "After: ". \$DB::single ." <<$x $$x\n";
}

The output/Вывод
Before: SCALAR(0x10f8310) <

Re: [Moscow.pm] Fwd: Почему меняется старое значение, хотя переменная локализирована?

2016-01-06 Пенетрантность KES
>И уж совсем не понятно, что же вы пытались
сделать, что в итоге такой кусок кода получился )))

Хотел положить ссылки на $DB::single в массив, чтобы можно было управлять 
значениями, в которые будет восстановлено $DB::single при выходе из блока. Это 
удобно, когда мы хотим выйти из текущей функции на n уровней вверх, при дебаге.
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Fwd: Почему меняется старое значение, хотя переменная локализирована?

2016-01-08 Пенетрантность KES
>Мне-то кажется, что именно этот метод и есть правильный, но навязывать ничего 
>не хочу )))

Получилось сделать локализацию вручную с помощью модуля Hook::Scope. Но 
дополнительно выкинул из него код 'use optimizer 'sub-detect' => \' 
потому, что модуль уж совсем старый и некорректно работает с новыми версиями 
perl.

use Hook::Scope;

sub sub_returns {
# если  стек есть...
if( defined $DB::deep ) { # когда функции ещё не вызывались, то 
$DB::deep == undef
$#DB::stack =  $DB::deep;
$DB::single =  $DB::stack[-1]{ single };
}

}

sub sub {
if( $DB::sub eq 'DB::sub_returns' ) { # предотвращаем segfault
return &$DB::sub;
}

# register hook to restore value when out of scope
Hook::Scope::POST( \_returns );
# relocate space and save value
$#DB::stack =  $DB::deep;
$DB::stack[-1] =  { single => $DB::single };

local $DB::deep = $DB::deep +1;
return &$DB::sub;
}
07.01.2016, 01:56, "Vladimir Timofeev" <vovk...@gmail.com>:
> 2016-01-07 6:19 GMT+03:00 Eugen Konkov <kes-...@yandex.ru>:
>>  Спасибо! Очень много интересной информации вы мне дали. Пойду изучать...
>>  Не могли бы вы мне подсказать файл, в котором перл генерирует обком для 
>> goto?
>
> Ну это просто. Все OP в файлах op*.c, так что ack 'pp_goto' op*.c и 
> получаем...
> pp_ctl.c:2768 OP(pp_goto)
>
> А вот дальше... текст там забавный )))
>
>>> Во втором случае никакой local работать не будет, вернее будет...
>>  local $DB::single = $DB::single +0; работал и работает отлично и в дебаг 
>> режиме тоже (см. ниже)
>
> Ух ты, я и не знал ))
> Интересно почему, но быстрый просмотр показал, что чтобы понять,
> придётся много времени потратить, которого нет...
> По идее магия для DB::single get/set очень простая, просто сохраняет
> значения ещё и в глобальном массивчике PL_DBcontrol (там для каждой
> переменной single, trace... по слоту). Хендлеры в конце mg.c, функции
> Perl_magic_setdebugvar и Perl_magic_getdebugvar.
>
>>> Мне кажется, что для хранения текущего состояния в своём дебаггере
>>  Как раз не текущее состояние было нужно, а n фреймов назад...
>>
>>  У меня в дебагере что-то наподобие:
>>  sub sub {
>>   local $DB::single = $DB::single +0; # без 0 не работает :?
>>   return &$DB::sub;
>>   }
>>
>>  Где-то внутри вызываемой функции с именем "$DB::sub" я делаю $DB::single = 
>> 0 и автоматом останавливаюсь на первом операторе вне этой функции. Т.е. для 
>> кода:
>>  sub t{ $DB::single = 0; }
>>  t();
>>  $x++; <<< останавливаюсь тут
>>
>>  Останавливаюсь потому, что после того как отработает 'return &$DB::sub' 
>> перл восстановит старое локализированное значение $DB::single в TRUE
>>  и вызовется DB::DB на первом опкоде после возврата, те. '$x++'
>>
>>  Но если бы мы хотели выйти на 2 фрейма вверх?
>>  То нам нужно, чтобы старое локализированное значение $DB::single 
>> восстановилось в FALSE
>>
>>  Как поменять старое локализированное значение? - Взять ссылку на него...
>>  Получается примерно такое:
>>  sub sub {
>>   $#DB::stack = $DB::deep;
>>   $DB::stack[-1] = { single => \$DB::single };
>>
>>   local $DB::single = $DB::single +0;
>>   local $DB::deep = $DB::deep +1;
>>   return &$DB::sub;
>>  }
>>
>>  sub t1 { $DB::stack[-1]{ single } = 0; $DB::single = 0; } #DEEP 2
>>  sub t2 { t1(); $y++; } # DEEP 1
>>  t2(); #DEEP 0
>>  $x++;
>>
>>  Если бы мы шли в функцию t1 пошагово, то было бы локализировано 2 значения 
>> $DB::single, это единицы.
>>  [
>> { single => \1 }
>> { single => \1 }
>>  ]
>>
>>  после выполнения t1 стэк выгледел был бы так:
>>  [
>> { single => \1 }
>> { single => \0 }
>>  ]
>>
>>  Соответственно после выхода из t1 перл бы востанавливал в $DB::single не в 
>> единицу, а в 0, а это бы позволило нам выйти из t2 тоже и остановиться на 
>> $x++
>>
>>  И теперь мне понятно (благодаря вашему объяснению), что из-за магии 
>> $DB::single, когда мы делаем ${ $DB::stack[-1]{single} } = 0, то меняются 
>> все значения в стеке, а не только указанное, т.е. получаем:
>>  [
>> { single => \0 }
>> { single => \0 }
>>  ]
>>
>>  соответственно вываливаемся полностью из программы...
>
> А не может ли быть того, что просто нет никакого стека там (в месте,
> где хранится реальное значение и куда дебаггер смотрит) в слоте
> PL_DBControl? ;-)
>
>>  Я предпологаю, что должна 

Re: [Moscow.pm] Вакансия Perl разработчик Санкт-Петербург

2016-04-06 Пенетрантность KES
День добрый 

Требования:
>• уверенное знание Perl;
10+
>• умение работать с любым из популярных шаблонизаторов (HTML::Template, TT, 
>CTPP и т.д); сталкивался, работал
>• умение работать с PostgreSQL или Mysql;
Без проблем
>• умение работать с большим объемом данных, опыт в hbase будет большим плюсом;
Отсутствует
>• знание JavaScript, HTML, CSS будет существенным плюсом;
 Без проблем
>• ответственность, инициативность, исполнительность.
Имеется

Вот мой профиль: https://moikrug.ru/konkov-e
На данный момент делаю дебаггер для Perl: 
https://github.com/KES777/Devel-DebugHooks/tree/develop

Готов работать удалённо. К кому и когда можно обратиться, чтобы пройти 
собеседование?

с Ув. Евгений Коньков
Мои контакты
Skype: konkov-e
e-mail: kes-...@yandex.ru

05.04.2016, 21:27, "Alex Chistyakov" <alexcl...@gmail.com>:
> Коллеги!
>
> Есть вот такая вакансия:
>
> Обязанности:
> • разработка проекта компании;
> • различные интеграционные решения;
> • тесная работа с фронт-енд программистом
>
> Требования:
> • уверенное знание Perl;
> • умение работать с любым из популярных шаблонизаторов (HTML::Template, TT, 
> CTPP и т.д);
> • умение работать с PostgreSQL или Mysql;
> • умение работать с большим объемом данных, опыт в hbase будет большим плюсом;
> • знание JavaScript, HTML, CSS будет существенным плюсом;
> • ответственность, инициативность, исполнительность.
>
> Условия:
> • офис ст. метро Горьковская в пешей доступности;
> • гибкий график работы, возможность работать удаленно;
> • работа в крупной российской компании (успешный прибыльный проект);
> • зарплата от 100 000 рублей, по результатам собеседования.
>
> Тип занятости:
> • Полная занятость, полный день.
>
> Резюме присылайте мне.
>
> Спасибо,
>
> --
> SY,
> Alex
> ,--
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Вакансия, удаленка (мопед мой)

2016-04-06 Пенетрантность KES
День добрый.

Зовут меня Коньков Евгений. Перл занимаюсь более 10лет. В основном для 
собственный целей: была собственная фирма. Предоставлял услуги интерент. Писал 
для себя биллинг, процессинг платежей (были собственные терминалы). Работал в 
reg.ru, потом ушел во фриланс. Сейчас перевожу сайт Mason -> Mojo. Также пишу 
собственный дебаггер для Perl скриптов: 
https://github.com/KES777/Devel-DebugHooks/tree/develop , на данный момент 
наполняю проект тестами (см. модуль t/Devel::DbInteract и t/2?-*.t)

Вот мой профиль: https://moikrug.ru/konkov-e

По требованиям:
mod_perl, Go, Cassandra - не сталкивался. Проблем в изучении новых технологий 
не испытываю. Например для изучения и уверенной работы с Mojo мне понадобилась 
одна неделя.

Готов пройти собеседование. Мои контакты Skype: konkov-e

05.04.2016, 21:27, "Daniel Podolsky" :
> компания: Setup.Ru (Москва, Россия)
> должность: backend разработчик
> занятость: полная, удаленная работа
> потолок ЗП: 150,000 р/мес
> необходимые навыки: Perl (mod_perl, Mojo), SQL (MySQL, PostgreSQL), Go
> желательные навыки: NoSQL (Cassandra), JS (Web GUI)
> что делать: поддерживать perl-код на плаву, переписывать его на go.
> обязательные требования: проактивность (на данный момент на проекте
> нет никого, кто мог бы поставить конкретную задачу в терминах
> системного анализа)
> куда слать CV: onoko...@gmail.com
> примечание: обязательно приложить ссылку на GitHub со своим кодом, на
> Perl и/или Go
> --
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Вакансия Perl разработчик Санкт-Петербург

2016-04-06 Пенетрантность KES
Да, сорри, кого побеспокоил "спамом" )). Видимо ещё не проснулся с утра (((

Зато родилась идея по улучшению интерфейса Яндекс.Почта. Напишу им очередное 
письмо... пусть добавляют задачу в таск лист )

06.04.2016, 09:54, "Akzhan Abdulin" <akzhan.abdu...@gmail.com>:
> Мне кажется, что в данном случае надо выбирать при составлении ответа 
> получателем автора исходного письма.
>
> Но вообще интересно было почитать.
>
> 6 апреля 2016 г., 9:42 пользователь KES <kes-...@yandex.ru> написал:
>> День добрый
>>
>> Требования:
>>>• уверенное знание Perl;
>> 10+
>>>• умение работать с любым из популярных шаблонизаторов (HTML::Template, TT, 
>>>CTPP и т.д); сталкивался, работал
>>>• умение работать с PostgreSQL или Mysql;
>> Без проблем
>>>• умение работать с большим объемом данных, опыт в hbase будет большим 
>>>плюсом;
>> Отсутствует
>>>• знание JavaScript, HTML, CSS будет существенным плюсом;
>>  Без проблем
>>>• ответственность, инициативность, исполнительность.
>> Имеется
>>
>> Вот мой профиль: https://moikrug.ru/konkov-e
>> На данный момент делаю дебаггер для Perl:
>> https://github.com/KES777/Devel-DebugHooks/tree/develop
>>
>> Готов работать удалённо. К кому и когда можно обратиться, чтобы пройти 
>> собеседование?
>>
>> с Ув. Евгений Коньков
>> Мои контакты
>> Skype: konkov-e
>> e-mail: kes-...@yandex.ru
>>
>> 05.04.2016, 21:27, "Alex Chistyakov" <alexcl...@gmail.com>:
>>
>>> Коллеги!
>>>
>>> Есть вот такая вакансия:
>>>
>>> Обязанности:
>>> • разработка проекта компании;
>>> • различные интеграционные решения;
>>> • тесная работа с фронт-енд программистом
>>>
>>> Требования:
>>> • уверенное знание Perl;
>>> • умение работать с любым из популярных шаблонизаторов (HTML::Template, TT, 
>>> CTPP и т.д);
>>> • умение работать с PostgreSQL или Mysql;
>>> • умение работать с большим объемом данных, опыт в hbase будет большим 
>>> плюсом;
>>> • знание JavaScript, HTML, CSS будет существенным плюсом;
>>> • ответственность, инициативность, исполнительность.
>>>
>>> Условия:
>>> • офис ст. метро Горьковская в пешей доступности;
>>> • гибкий график работы, возможность работать удаленно;
>>> • работа в крупной российской компании (успешный прибыльный проект);
>>> • зарплата от 100 000 рублей, по результатам собеседования.
>>>
>>> Тип занятости:
>>> • Полная занятость, полный день.
>>>
>>> Резюме присылайте мне.
>>>
>>> Спасибо,
>>>
>>> --
>>> SY,
>>> Alex
>>
>>> ,--
>>
>>> Moscow.pm mailing list
>>> moscow-pm@pm.org | http://moscow.pm.org
>> --
>> Moscow.pm mailing list
>> moscow-pm@pm.org | http://moscow.pm.org
>
> ,--
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Дебаггер

2016-03-30 Пенетрантность KES
Дев. консоли браузеров не покажут содержимое сессии ;-)
Не покажут логи сервера
Не покажут статистику используемой памяти и тд.

29.03.2016, 16:25, "Anatoly Y" <iskhart...@gmail.com>:
> так это же всё есть в обычных девконсолях браузеров.
>
> 2016-03-29 18:36 GMT+06:00 KES <kes-...@yandex.ru>:
>> Вот ещё очень удобная штука, если нужно смотреть, запрос/ответ
>> https://metacpan.org/pod/Plack::Middleware::Debug
>>
>> Загружаешь страничку, а справа панель. Смотришь нужный раздел или скрываешь 
>> панель вообще.
>>
>> Вот как это выглядит 
>> http://i.piccy.info/i9/71fbd33f348335d919bf6f16b7100f01/1459254938/138655/1019526/del_.png
>>
>> --
>> Moscow.pm mailing list
>> moscow-pm@pm.org | http://moscow.pm.org
>
> ,--
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Дебаггер

2016-03-29 Пенетрантность KES

Вот ещё очень удобная штука, если нужно смотреть, запрос/ответ
https://metacpan.org/pod/Plack::Middleware::Debug

Загружаешь страничку, а справа панель. Смотришь нужный раздел или скрываешь 
панель вообще.

Вот как это выглядит 
http://i.piccy.info/i9/71fbd33f348335d919bf6f16b7100f01/1459254938/138655/1019526/del_.png
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Нужна подсказка по отладке отправки почты через NET::SMTP

2016-07-13 Пенетрантность KES
так запустить вручную, не через крон и прогнать программу пошагово.
Если что, пиши в irc, который указан на metacpan модуля.
я там буду завтра в канале. Или в личку письмо пиши, я тебе помогу с дебаггером

13.07.2016, 18:42, "Александр Фролов" <alexan...@frolov.pp.ru>:
> Так ведь оно по крону должно запускаться каждую минуту, и писать 
> автоматически в журнал, для каких адресов и какие ошибки появляются.
> Пока не могу придумать ничего другого, как патчить Net::SMTP...
>
> -Original Message-
> From: Moscow-pm [mailto:moscow-pm-bounces+alexandre=frolov.pp...@pm.org] On 
> Behalf Of KES
> Sent: Wednesday, July 13, 2016 6:36 PM
> To: Moscow.pm group <moscow-pm@pm.org>
> Subject: Re: [Moscow.pm] Нужна подсказка по отладке отправки почты через 
> NET::SMTP
>
> https://github.com/KES777/Devel-DebugHooks
> https://metacpan.org/release/Devel-DebugHooks
>
> или стандартный дебаггер перла:
> perl -d script.pl
>
> 13.07.2016, 18:25, "Александр Фролов" <alexan...@frolov.pp.ru>:
>>  Здравствуйте!
>>  Отправляю почту с помощью Net::SMTP в несколько потоков через AnyEvent из 
>> крона:
>>
>>   $smtp= Net::SMTP->new(
>> Hello => $host->get_hello(), Host => $host->get_host_name(), Timeout 
>> => 10,
>> Debug => $this->{ 1 },
>>
>>  Флаг Debug отправляет отладочную информацию на консоль.
>>  Хочется из программы как-то перехватить диагностическую выдачу, 
>> проанализировать и записать ошибки в журнал.
>>  Подскажите, пожалуйста, как это можно сделать?
>>  Спасибо!
>>
>>  С уважением,
>>  Александр Фролов
>>  ---
>>  Пожалуйста, при ответе сохраняйте историю переписки.
>>
>>  ,--
>>  Moscow.pm mailing list
>>  moscow-pm@pm.org | http://moscow.pm.org
> --
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
> ,--
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Нужна подсказка по отладке отправки почты через NET::SMTP

2016-07-13 Пенетрантность KES
https://github.com/KES777/Devel-DebugHooks
https://metacpan.org/release/Devel-DebugHooks

или стандартный дебаггер перла:
perl -d script.pl

13.07.2016, 18:25, "Александр Фролов" :
> Здравствуйте!
> Отправляю почту с помощью Net::SMTP в несколько потоков через AnyEvent из 
> крона:
>
>  $smtp= Net::SMTP->new(
>    Hello => $host->get_hello(), Host => $host->get_host_name(), Timeout 
> => 10,
>    Debug => $this->{ 1 },
>
> Флаг Debug отправляет отладочную информацию на консоль.
> Хочется из программы как-то перехватить диагностическую выдачу, 
> проанализировать и записать ошибки в журнал.
> Подскажите, пожалуйста, как это можно сделать?
> Спасибо!
>
> С уважением,
> Александр Фролов
> ---
> Пожалуйста, при ответе сохраняйте историю переписки.
>
> ,--
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] подскажите наиболее лучший способ интеграции CGI приложение в Mojolicious

2016-09-01 Пенетрантность KES
А что с Mojo не так пошло?

01.09.2016, 22:50, "Akzhan Abdulin" :
> Шаблонизаторы (2-3 шт.) сменили  на Mojo, но увы, скоро опять сполная смена, 
> на Jade (лень помнить текущее название).
>
> 1 сентября 2016 г., 22:48 пользователь Akzhan Abdulin 
>  написал:
>> Попутно выпилили 2 ORM из 4 в проекте, и еще кучу всего...
>>
>> 1 сентября 2016 г., 22:45 пользователь Akzhan Abdulin 
>>  написал:
>>
>>> 4 месяца назад у нас был Apache :) 3 месяца назад у нас был проприетарный 
>>> Ontico, тогда же мы пережли с grunt на gulp
>>> Нынче переезжаем на webpack... рефакторинг необходим, чтобы глаза горели.
>>>
>>> 1 сентября 2016 г., 21:10 пользователь Alexey Shrub  
>>> написал:
>>>
 Уверен что подавляющее большинство вам завидует.

 On Чт, сен 1, 2016 в 8:53 , Akzhan Abdulin  
 wrote:

> А мы при таких переходах просто тратим один-два спринта на полный переход 
> на новый стек, что на фронте, что на бэке.
 --
 Moscow.pm mailing list
 moscow-pm@pm.org | http://moscow.pm.org
>
> ,--
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Potracheno: wasted time tracker

2016-10-04 Пенетрантность KES
Вот хорошая штука https://wakatime.com , чтобы смотреть в каких приложениях 
потратилось время.
Как по мне, очень хорошая интеграция с редакторами и браузерами: 
https://wakatime.com/editors

03.10.2016, 19:23, "Alexey Shrub" :
> On Пн, окт 3, 2016 в 4:01 , Konstantin S. Uvarin
>  wrote:
>>    Давно мечтал запилить трекер для
>>  учёта времени, продолбанного на
>>  борьбу с техническим долгом. И вот -
>>  выдалась минутка...
>
> Идея шикарная, хотя требует
> привычки/дисциплины от разработчика.
> Но не уверен насчёт отдельной тулзы,
> получается надо и в обычную таску
> время вписать и в тикет просраченного
> времени - дублирование, нарушение DRY.
> В идеале надо конфигурить/плагинить
> популярные таск-трекеры (redmine какой)
> так, чтобы можно было при вписывании
> времени указать тип - просраченное, а
> потом глядеть в отчёте по затраченному
> времени сколько полезной активности
> было, а сколько не очень.
> Плюс надо привязывать просраченное
> время к компоненту и виновному
> разработчику, чтобы потом по
> статистике видеть кого в первую
> очередь рефакторить.
> --
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Encode: danko gay, все геи - вредители!

2016-10-20 Пенетрантность KES
>20.10.2016, 10:04, "Alexey Shrub" :
>2. Не видел исследований на тему связи
сексуальной ориентации и каких-то иных
качеств вроде навыков
программирования или проектирования и
сомневаюсь что такие есть, а если нет,
то нет смысла этот вопрос обмусоливать
в технической рассылке.

По исследованиям британских ученых злостные нарушители пдд склонны к 
гомосексуализму (или являются таковыми). 
Думаю просто никто технарей не проверял ещё. Но ввиду темы, задуматься стоит :D
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Encode: danko gay, все геи - вредители!

2016-10-18 Пенетрантность KES
>$dbh->selectrow_hashref('/* получим юзера */ SELECT * FROM users WHERE id = 1')

А как вас называет за такое? :D


Есть проблема - открываете issue. Горит??? Делаете pull request. 
В чём проблема?
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Perl vs Python

2016-10-26 Пенетрантность KES
Раз уж эта тема 'vs Python', прошу уточнить что из этого списка есть в Python

26.10.2016, 14:09, "Daniel Podolsky" :
>>  И за столько лет ты умудрился узнать Перл всего-то процентов на 5-10 (судя
>>  по постам - не больше) ?
>
> в 21-ом веке про perl надо знать только самое важное, а не тьму
> унижающих его подробностей:
>
> 1. в perl vm нет поддержки многопоточности
> 2. в perl vm нет поддержки JIT
> 3. для perl vm нет семплирующего профайлера
> 4. ничего этого в перл не будет уже никогда, потому как на perl vm нет
> и не будет никогда спецификации.
>
> rest in peace, дорогой язык, мы тебя не забудем.
> --
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Perl vs Python

2016-10-26 Пенетрантность KES
Можно я отвечу на вопрос абстрактно?Не спрорьте с дурамами, они опустят вас до своего уровня и победят за счёт опыта :D26.10.2016, 14:55, "Alex Chistyakov" :2016-10-26 14:47 GMT+03:00 Naim Sh :Коллеги , плиз  не засоряйте эфир , не грызытесь между собой,все таки рассылку должна быть приятной и продуктивной для чтения.У меня к уважаемому сообществу вопрос следующего характера в рамках установления, так сказать, объективной истины - сколько тут еще специалистов уровня Ивана.Как так получилось, что Иван работает в MRG, я не спрашиваю, плавали-знаем.А приятным и продуктивным для чтения пусть будет журнал Playboy.Нет, правда, "не грызитесь между собой" - это просьба уровня хабра.Давайте сперва прекратим нести хуйню в технических темах. 


On 10/26/2016 03:39 PM, Ivan Petrov wrote:

в сад, срочно!
т.е. в книжу Ларри Уолла. глава 18: Компиляция.

То есть, наличие у интерпретатора стадии компиляции делает интерпретатор
компилятором?

во видишь, читать начал. скоро до понимания добираться начнешь,
научный работник.

поскольку есть стадия компиляции, то говорить об интерпретаторе как-то
неуместно чтоли.

а поскольку об интерпретаторе говорить неуместно, то и JIT получается
не нужен, ибо JIT это как раз попытки исправить недостатки
интепретаторов, коих у Perl нет.



-- 
 
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org

,-- Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Когда уже будет встреча Moscow.pm?

2016-10-26 Пенетрантность KES
Я бы рассказал про дебаг скриптов, но к вам ехать далеко ((25.10.2016, 22:27, "warst...@list.ru" :
Мы как раз сегодня на кухне холиварили на тему того - что писать в корпоративный блог на Хабре или "почему его у нас нету"... Ни к чему не пришли, но мое мнение - что рассказывать не о чем... Вот из относительно интересного - я поюзал магию перловскую для АБ-тестирования. Но делать доклад "смотрите, я написал 5кб Си кода с 2мя вызовами коллбеков" - это бред, ИМХО. Идите и читайте perlguts / perlapi и исходники перла... Делать доклад на тему "почему кодогенерация через наследование и прекеш перед форком - это тру" - тоже не сильно имеет смысл, ИМХО. А больше-то и нету тем.
	Вторник, 25 октября 2016, 16:53 +03:00 от Dmitry Kopytov :
	
	


















	













	
 	
		
		
On Mon, Oct 24, 2016 at 01:44:17PM +0300, Evgeniy Vansevich wrote:
> А что? - есть идеи докладов?)

Да идеи всегда есть и у всех, просто почему-то не хотят делиться. В
рассылке очень много крутых гуру-перловиков, почему не хотите делиться
своими наработками и опытом? Жадничаете чтоли? Уверен, что масса людей с
удовольствием бы вас послушала! Где вы все??

-- 
Dmitry Kopytov

-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org



		
	

	






,-- Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Perl vs Python

2016-10-26 Пенетрантность KES
Любители переходить на личности, если у вас возникло желание написать "ТЫ" бла-бла-бля, то лучше не пишите. Не хотелось бы нагружать спам фильтр лишними правилами с вашми мейлом26.10.2016, 13:59, "Павел Борисов" :>>Во-вторых, я начал писать на Perl курсе на 4-м - это какой, то бишь, год был на дворе, 1997-й?И за столько лет ты умудрился узнать Перл всего-то процентов на 5-10 (судя по постам - не больше) ?Так может быть всёж-таки ебаната и макаку ты каждый день в зеркале наблюдаешь, а не в окружающем мире ?26 октября 2016 г., 13:48 пользователь Alex Chistyakov  написал:2016-10-26 13:46 GMT+03:00 Ivan Petrov :> что Perl - довольно сильное говно

Еще раз повторю вопрос: что ТЫ делаешь в ЭТОЙ рассылке?Во-первых, я, как и Диоген, ищу человека.Во-вторых, я начал писать на Perl курсе на 4-м - это какой, то бишь, год был на дворе, 1997-й?То есть - "если не я, то кто же?" 
--
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org

--
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org
-- --С уважением,Борисов ПавелпрограммистООО "Ф-Лайн Софтвер"

,-- Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Perl vs Python

2016-10-26 Пенетрантность KES
+1 Кроме "Ответить всем" есть такая кнопка "Ответить" И все будут щастливы.

26.10.2016, 14:49, "Naim Sh" :
> Коллеги , плиз не засоряйте эфир , не грызытесь между собой,все таки
> рассылку должна быть приятной и продуктивной для чтения.
>
> On 10/26/2016 03:39 PM, Ivan Petrov wrote:
  в сад, срочно!
  т.е. в книжу Ларри Уолла. глава 18: Компиляция.
>>>  То есть, наличие у интерпретатора стадии компиляции делает интерпретатор
>>>  компилятором?
>>  во видишь, читать начал. скоро до понимания добираться начнешь,
>>  научный работник.
>>
>>  поскольку есть стадия компиляции, то говорить об интерпретаторе как-то
>>  неуместно чтоли.
>>
>>  а поскольку об интерпретаторе говорить неуместно, то и JIT получается
>>  не нужен, ибо JIT это как раз попытки исправить недостатки
>>  интепретаторов, коих у 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


Re: [Moscow.pm] Темы докладов на Moscow.pm

2016-10-27 Пенетрантность KES via Moscow-pm
Попробуйте вот этот дебаггер: https://www.youtube.com/watch?v=OUhQCz5iB68Devel::DebugHooks27.10.2016, 09:16, "TheAthlete via Moscow-pm" :+1От себя добавлю:  Mojo::IOLoop, Marpa parser, websockets, написание и оптимизация сложных регулярных выражений, отладка с помощью Devel::Trepan, gdb, strace (скриптов и веб приложений) Отправлено с моего телефона на Windows 10 От: Evgeniy Vansevich via Moscow-pmОтправлено: 26 октября 2016 г. в 20:17Кому: Moscow.pm groupКопия: Evgeniy VansevichТема: Re: [Moscow.pm] Темы докладов на Moscow.pm Давно пора. В прошлый раз я это говорил, не увенчалось успехом)Пока наброшу кейвордов для докладов интересных лично мне: AnyEvent, Coro, JIT, peephole(Интересные кейсы оптимизации, и возможности, например оптимизация кейса ref $arrayref eq 'ARRAY' - до простой проверки бита.), XS  26.10.2016, 20:08, "Павел Купцов via Moscow-pm" :Коллеги, а может нам лучше не скидывать Павлу темы своих докладов, а пойти от обратного и накидать сюда то что каждый хотел бы послушать? Вдруг интересы одних пересекаются с возможностями других?Я вот готов завтра накинуть немного тем, которые с удовольствием бы послушал. Сегодня просто предлагаю всем подумать об этом и написать по мере появления мыслей.Что скажете?,-- Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org ,-- Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Темы докладов на Moscow.pm

2016-10-28 Пенетрантность KES via Moscow-pm
>Мы начинали делать магазины на Perl еще в 2001 году
Вот за что люблю перл: один раз написал и работает годами.

28.10.2016, 14:14, "Александр Фролов via Moscow-pm" :
> Всем привет!
>
> Будет ли интересна тема доклада не про сам Perl, а про кейс его применения на 
> нашем SAAS-сервисе интернет-магазинов?
> Мы начинали делать магазины на Perl еще в 2001 году, и до сих пор все 
> компоненты нашего сервиса написаны на этом языке.
> Предполагаемые тезисы:
>
> - Почему Perl, а не PHP или ASP?
> - Откуда мы берем программистов Perl и куда они потом деваются?
> - Как мы клонировали магазины и обрабатывали заявки вручную.
> - Состав компонентов и сервисов:
>    -- Система клонирования и обновления магазинов
>    -- Биллинг, он же CRM
>    -- Клондайк (база знаний, информационная система)
>    -- Перловка (не каша, наш репозиторий модулей Perl)
>    -- Демоны и демонятник
>    -- MailProxy для массовых рассылок почты интернет-магазинов
>    -- Сервис уведомлений о заказах через протокол WebSocket
>    -- Резервное копирование данных
>    -- Мониторинг серверов и сервисов с помощью Zabbix
>
> С уважением,
> Управляющий директор ООО "АйТи-Матрикс"
> Александр Фролов
>
> +7 (495) 545-4921
> +7 (495) 589-0759
> supp...@itmatrix.ru
> www.shop2you.ru
>
> ---
> Пожалуйста, при ответе сохраняйте историю переписки.
>
> ,--
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Регулярные выражения. Помогите понять, почему так.

2016-10-29 Пенетрантность KES via Moscow-pm
Вопрос после * или + - это флаг, который указывает какой алгоритм будет работать: жадный или не жадный. Например для строки: "bla " регулярка /(bla\s*)/ вернет "bla" и все пробелы, в то время как /(bla\s*?)/ вернет только "bla". Аналогично /(bla\s+)/ вернет "bla" и все пробелы. в то время как /(bla\s+?)/ вернет "bla" с одним пробелом. В обоих случаях один пробел после "bla" обязателен.29.10.2016, 11:14, "Динар Жамалиев via Moscow-pm" :Ясно изъясняться не моя фишка. Под сутью я имел другое. Для примера в контексте строки вида  "bla bla bla"  шаблоны вида  /bla\s*?/ и /bla\s+?/ иидентичны в том смысле, что подстрока "bla " все равно будет найдена, не так ли?29 октября 2016 г., 2:41 пользователь Loginoff Nick via Moscow-pm  написал:\s* != \s+ - так что это очень сильно меняет суть шаблона. В данном контексте пробела может и не быть... Так что это не решает проблему 28.10.2016, 21:44, "Динар Жамалиев via Moscow-pm" :Если везде заменить \s* на \s+, что не меняет сути шаблона, результат будет мгновенным, так как квантификатор +? не отступает назад, захват либо есть максимально возможный, либо нет. В то время как *? сначала захватывает все, затем отступает Каждый дополнительный * значительно увеличивает число комбинаций. В твоем случае 16й элемент приводит к экспоненциальному увеличению возможных комбинаций 28 октября 2016 г., 22:30 пользователь Artem Zhuravlev via Moscow-pm  написал:Тут скорее дело в Захвате и построение обратных ссылок для них, на 16+ явно замедляется Вот переменная без захватом отработает быстроmy $regexp16 = qr('(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:3\s*?(?:[^a-z]\s*?)+?r)|(?:2\s*?(?:[^a-z]\s*?)+?r)');Так что думаю стоит уменьшить количество захватов.Ну или как в книге пишут если можно то вместо /a|b/ пишите /a/ || /b/ --Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org ,--Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org  -- С Уважением, Login|off Nick или STork. --
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org

,-- Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] [OFFTOPIC] Ищется информация

2016-12-01 Пенетрантность KES via Moscow-pm
>С Go вот какая беда - нет пока массового опыта реально больших проектов на нем.
Я думаю врятли будет. GO без поддержки гугла ничего не будет стоить, а гугл, 
похоже, будет поддерживать swift 
Пруф: 
http://itc.ua/news/po-sluham-google-hochet-sdelat-apple-swift-pervoklassnyim-yazyikom-programmirovaniya-dlya-android/

28.11.2016, 10:27, "Daniel Podolsky via Moscow-pm" :
>>  А Go? Там же зеленые треды, как в Java, Haskell, Erlang... Или для Go 
>> другая причина?
>
> в java нет зеленых тредов.
>
> С Go вот какая беда - нет пока массового опыта реально больших проектов на 
> нем.
>
> ни положительного, ни отрицательного.
>
> я вот ввязался, потому что я то ли глупый, то ли смелый.
>
> а Акжан вот осторожничает, потому что то ли умный, то ли трусливый :)
> --
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Технический долг

2017-03-03 Пенетрантность KES via Moscow-pm
Выделять день на то, чтобы работать над тех. долгом.А назойливые чатики и звонки по ночам просто будут служить поводом задуматься о месте работы. ИМХО. И нужно иметь картину того, что пилим и для чего. А не потому, что есть такая задача.03.03.2017, 12:09, "Dmitry via Moscow-pm" :Хочется услышать мнение коллег тимлидов, РМ-ов и прочих *М-ов,  технических директоров и т.п.
 Вот допустим, у вас есть команда,  состоящая из X разработчиков, Y 
тестировщиков и Z всех остальных, к кому есть непосредственный доступ 
через багтрекер. В этом самом багтрекере есть некоторый неизбежный 
технический долг, который  накапливается  за каждым из участников вашей 
замечательной команды. Как вы решаете задачу напоминания о том, что с техническим долгом надо что-то делать?   * Делаете дополнительные почтовые рассылки, плюс к тем, которые и так делает багтрекер?  * Создаете назойливые чатики в IRC/Skype/Jabber/WhatsApp/Telegram?  * Звоните по ночам и страшным голосом ревете в трубку "Должо-о-о-о-ок!!!" * Ваш вариант-- WBR, Dmitry. mailto: mescalito...@gmail.comskype:  mescalito_genesysphone: +38 067 974 7812phone: +7 915 382 2412

,-- Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


[Moscow.pm] Soft call operator (Оператор мягкого вызова): ~>

2017-04-19 Пенетрантность KES via Moscow-pm
Привет.

А у меня вот давно витает идея "мягкого вызова". 
Даже ещё когда писал на ассемблере всегда раздражали исключения при `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 undefif !defined $left_operand;

'->'( $left_operand, $right_operand ); # делаем обычную обработку вызова 
функции
}


Комментарии wellcome
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Валидация шаблонов Mojo::Template

2017-08-29 Пенетрантность KES via Moscow-pm
Все хелперы в Mojolicious работают через AUTOLOAD

Просто перегрузите в своём коде Mojolicious::Controller::AUTOLOAD

sub Mojolicious::Controller::AUTOLOAD { '' }

и все вызовы к хелперам пройдут успешно, за исключением когда хелпер возвращает 
объект
$c->some_helper->object_method

для этих случаев можете попробовать dispatch табличку

my $table = { method_name => sub { 'вернуть нужный объект тут' }, method_name2 
=> sub { ... } }
sub Mojolicious::Controller::AUTOLOAD { return $table->{ $AUTOLOAD }->() }

15.06.2017, 16:19, "Alexander M. Pravkin via Moscow-pm" :
> Уважаемые почитатели Mojolicious, помогите с такой проблемой.
>
> Есть некоторое число проектов, которые благополучно работают на perl
> 5.16-5.20, но на свежем валятся, ибо там повсеместно используются
> конструкции, не рекомендованные к использованию. Собственно, встала
> задача исправить это безобразие.
>
> С самим кодом проблем нет, проблемы есть с embedded-perl-шаблонами Mojo.
> Если бы их была пара штук или хотя бы пара десятков, можно было бы и
> вручную обойти. Но их около сотни только в одном проекте.
>
> В общем, понадобилась автоматическая валидация, хотя бы по синтаксису.
> На просторах, увы, не нашёл ничего, решил попробовать сам.
>
> Простые шаблоны нормально обрабатываются вот таким скриптом:
>
> use strict;
> use open qw(:std :utf8);
> use Mojo::Template;
>
> my $file = $ARGV[0]
> or die "Usage: $0 mojo-template.ep\n";
>
> my $mt = Mojo::Template->new(vars => 1);
>
> my $res;
> # Проход первый: ищем необъявленные переменные
> {
> local $SIG{__WARN__} = sub {};
> $res = $mt->render_file($file)
> or die "render_file $file returned nothing\n";
> }
>
> # Если ошибок не было -- всё OK
> ref $res and $res->isa('Mojo::Exception')
> or exit 0;
>
> # Ищем все переменные, используемые шаблоном
> # Считаем, что автор кода тоже передаёт render'у все нужные
> my $errors = "$res";
> my %stash = map { $_ => undef }
> ($errors =~ /Global symbol "\$(\w+)" requires explicit package name/g);
> delete $stash{_O}; # подставная переменная Mojo::Template
>
> print "+++ $file variables: ", join(' ', sort keys %stash), "\n";
>
> # Проход второй, настоящие ошибки
> $res = $mt->render_file($file, \%stash);
> if (ref $res and $res->isa('Mojo::Exception')) {
> die "\n--- $file has errors:\n$res\n";
> }
>
> Но он, как минимум, не понимает helper'ов от всяких плагинов (layout,
> include и прочие form_for). Присобачить использование плагинов к
> одинокому Mojo::Template я ниасилил. Кто-нибудь может подсказать?
>
> --
> Правкин Александр
> --
> Moscow.pm mailing list
> moscow-pm@pm.org | http://moscow.pm.org
-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] JSON::XS, mod_perl, boolean

2017-11-28 Пенетрантность KES via Moscow-pm
А дампа исходного запроса нет, где словили null? 28.11.2017, 14:24, "Pavel Zabolotniy via Moscow-pm" : 28.11.2017 14:57, Толян II via Moscow-pm пишет:Прямо с такой нет, но boolean несколько граблей было собрано, и мне пришлось заменить JSON::true и JSON::false на  \0, и \1 в конфигурации \(my $s=1) и \(my $s=0).Возможно тебе это поможет. А у тебя такая проблема возникла или ты просто спрашиваешь?  Да, такая проблема воникла.Там, где могли, заменили на \0, и \1.Есть часть данных, которые приходят от сторонних источников (чужое АПИ). Для этих данных делается decode, после чего они встраиваются в наши данные "as is". Среди "чужих" данных есть boolean. В какой-то момент начинаем ловить null в наших ответах вместо true/false. 2017-11-28 12:34 GMT+03:00 Pavel Zabolotniy via Moscow-pm :Привет, moscow-pm!Кто-нибудь сталкивался с проблемой http://www.perlmonks.org/?node_id=1021294 ?Как ее решали?Спасибо!--#!/usr/bin/Regards,Pavel Zabolotniyemail: t...@myrz.ru--Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org  -- 
#!/usr/bin/Regards,
Pavel Zabolotniy
email: t...@myrz.ru,--Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] JSON::XS, mod_perl, boolean

2017-11-28 Пенетрантность KES via Moscow-pm
JSON запрос, который пришел и в котором возникла указанная ошибка28.11.2017, 15:30, "Pavel Zabolotniy" <t...@myrz.ru>:
  

  
  



28.11.2017 16:04, KES пишет:


  А дампа исходного запроса нет, где словили null?
   


Что подразумевается под дампом? Может сможем сделать.


  28.11.2017, 14:24, "Pavel Zabolotniy via Moscow-pm"
<moscow-pm@pm.org>:
  
 
  28.11.2017 14:57, Толян II via Moscow-pm пишет:
  

  

  Прямо с такой нет, но boolean несколько граблей
было собрано, и мне пришлось заменить JSON::true и
JSON::false на  \0, и \1 в конфигурации \(my $s=1) и
\(my $s=0).
  Возможно тебе это поможет.
   
А у тебя такая проблема возникла или ты просто
спрашиваешь?
 

 
  
  
  Да, такая проблема воникла.
  Там, где могли, заменили на \0, и \1.
  
  Есть часть данных, которые приходят от сторонних источников
  (чужое АПИ). Для этих данных делается decode, после чего они
  встраиваются в наши данные "as is". Среди "чужих" данных есть
  boolean. В какой-то момент начинаем ловить null в наших
  ответах вместо true/false.
   
  

  2017-11-28 12:34 GMT+03:00 Pavel
Zabolotniy via Moscow-pm <moscow-pm@pm.org>:
Привет, moscow-pm!
  Кто-нибудь сталкивался с проблемой http://www.perlmonks.org/?node_id=1021294
  ?
  Как ее решали?
  
  Спасибо!
  
  --
  #!/usr/bin/Regards,
  Pavel Zabolotniy
  email: t...@myrz.ru
  --
  Moscow.pm mailing list
  moscow-pm@pm.org | http://moscow.pm.org
  


 
   
  -- 
#!/usr/bin/Regards,
Pavel Zabolotniy
email: t...@myrz.ru

,--
  Moscow.pm mailing list
  moscow-pm@pm.org
  | http://moscow.pm.org


-- 
#!/usr/bin/Regards,
Pavel Zabolotniy
email: t...@myrz.ru
  


-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Генерация анонимных typeglob в xs

2017-11-23 Пенетрантность KES via Moscow-pm
Совсем не XS, но возможно даст кое какие идеи как генерировать: https://metacpan.org/source/SHAY/perl-5.26.1/lib/Symbol.pm#L100 22.11.2017, 22:21, "Толян II via Moscow-pm" :То, что надо. С несущественными изменениями полет нормальный :)    SV* gv = newSV(0);    gv_init_pvn(gv, gv_stashpvn("OK", 0, 0), "VICTORY", 7, GV_ADDMULTI);  22 ноября 2017 г., 18:53 пользователь Sergey Aleynikov via Moscow-pm  написал:Добрый день,22 ноября 2017 г., 16:30 пользователь Толян II via Moscow-pm написал:> Понадобилось в perlxs генерировать анонимные typeglob.Минимальный код выглядит примерно так,    SV* gv = newSV(0);    gv_init_pvn(gv, gv_stashpvn("main", 4, 0), "test", 4, GV_ADDMULTI);Но, в зависимости от того, как будете использовать результат, он можетзначительно измениться - т.к. какие-то функции ждут валидного EGV ит.д.Best regards,Sergey Aleynikov--Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org,--Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org


Re: [Moscow.pm] Mojo::Log и UTF8

2018-10-08 Пенетрантность KES via Moscow-pm
ссылка по теме: https://stackoverflow.com/questions/6162484/why-does-modern-perl-avoid-utf-8-by-default возможно пригодится07.10.2018, 10:57, "Alex Povolotsky via Moscow-pm" :
  

  
  
По итогам:
use utf8::all;
binmode STDERR;
Для вывода в stderr дают нормальную работу.
То, что пишется в файлы, видимым образом не страдает


06.10.2018 17:33, Ксения Боброва пишет:


  
  А куда он пишет, в STDERR или STDOUT?


Не пробовали binmode(STDERR,
  ":utf8") 
и binmode(STDOUT, ":utf8") 
?
  
  
  
сб, 6 окт. 2018 г. в 15:45, Alex Povolotsky via
  Moscow-pm :

Добрый день
  
  Обнаружил, что Mojo::Log у меня не пишет русские буквы
  
  
  === cut mojolog ===
  
  #!/usr/bin/env perl
  use strict;
  use utf8;
  use Mojo::Log;
  my $log = new Mojo::Log;
  print "Просто принт\n";
  $log->info('тест лога');
  === cut mojolog ===
  
    % perl mojolog
  Просто принт
  [Sat Oct  6 15:22:43 2018] [info] ÑеÑÑ Ð»Ð¾Ð³Ð°
  
  В попытках разобраться, обнаружил, что на трех других серверах
  этот 
  скрипт работает адекватно.
  
  Версия ОС везде FreeBSD 11.1 или 11.2. Perl 5.26. Mojolicous
  8.00 или 
  7.88. LANG везде ru_RU.UTF-8.
  
  Что это может быть? Попробовал на проблемной машине обновить
  перл, 
  пересобрал все модули с бинарниками, эффекта никакого.
  
  --
  
  Alex
  -- 
  Moscow.pm mailing list
  moscow-pm@pm.org | http://moscow.pm.org

  
  
  
  
  -- 
  

  

  Ksenia Bobrova
  

  

  


  

,-- Moscow.pm mailing listmoscow-pm@pm.org | http://moscow.pm.org-- 
Moscow.pm mailing list
moscow-pm@pm.org | http://moscow.pm.org