perl — кэширование

Модули Perl для организации кэширования данных — CHI, Cache::Cache

[…]

Kaitai Struct — Парсер бинарных форматов

Kaitai Struct

A new way to develop parsers for binary structures.

Поддерживает генерацию кода на языках:

C++/STL C# Java JavaScript Perl PHP Python Ruby […]

Блокировка выполнения скрипта

Существуют разные подходы. Обычно используется файл, в котором пишется PID процесса, но это «внутренняя» блокировка, программа сама себя блокирует, зная свой PID. Но существуют и другие подходы для внешней блокировки вызываемой программы, если программа сама не умеет блокироваться.

[…]

mojolicious — переходим на версию 6

Запомнившиеся изменения в версии 6. Некоторые стали очень неожиданным сюрпризом.

[…]

perl — REST интерфейсы

REST + Mojolicious

Mojolicious::Plugin::REST, Mojolicious::Plugin::RESTful, Mojolicious::Plugin::Restify примерно одинаковые. А вот Mojolicious::Plugin::Swagger2 уже из другой весовой категории.

[…]

perl — мой стиль написания программ

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

Некоторое время назад перловое сообщество начало оправляться после диверсии perl6 и взялось за модернизацию perl5. Ниже то, что мне […]

Распознание формата даты и времени

Типовая задача — есть строка даты, её надо распрознать. Есть много парсеров DateTime::Format::* , проблема выбрать нужный. Скрипт ниже перебирает все и выдаёт те, которые справились с задачей.

#!bash root@superserver:~$ ./find-datetime-parser.pl «Mon, 9 Mar 2015 14:35:49 +0300» Тестируем парсеры для ‘Mon, 9 Mar 2015 14:35:49 +0300’ Формат распознан 2015-03-09T14:35:49 +0300 DateTime::Format::DateParse Формат распознан 2015-03-09T14:35:49 +0300 […]

perl5i — современные улучшения perl5 в одном флаконе

Программа на перле сейчас начинается с простыни подгрузки модулей, причём их уже дессятки!!! (мы все умрём!!!). Возникает вопрос что делать. Ответ — использовать один из нескольких модулей, делающих всё водной строке. Остановимся на самом, наверно, навороченнном — perl5i.

perl5i — практически неизвестный модуль (если вообще модуль), переделывающий перл в новый язык. Чем-то он напоминает по […]

perl — switch,case, , given, when

Аналоги Switch в Perl программах на удивление мало распространены. Хотя есть аж два его варианта, доступные уже лет ддесять — switch и given. B обе всё ещё экспериментальные.

[…]

PostgreSQL — SELECT count(*) FROM table

count(*) в PostgreSQL очень медленная операция. Чтобы её ускорить, применяют разные трюки, например, описанный в Reduce cost of select count(*) queries with trigger-based method. При вставке и удалении строк увеличиваем или уменьшаем значение соответствующего столбца в специальной таблице. Подробности в статье, там же оценка разницы в скорости получения count. Я несколько автоматизировал процесс регистрации таблиц.

[…]