LINUX.ORG.RU

Сообщения perl5_guy

 

Релиз Erlang/OTP 24.0

Новости — Разработка
Группа Разработка

Вышел важный релиз платформы для разработки высоконагруженных и отказоустойчивых систем - Erlang/OTP за номером 24.

Выпуск включает в себя более 1400 коммитов, изменивших около полумиллиона строк. Ключевым нововведением является добавление JIT-компилятора «BeamAsm» в виртуальную машину Erlang'а (BEAM). Попытки реализации данного функционала предпринимались на протяжении ~10 лет и наконец увенчались успехом.

( читать дальше... )

>>> Подробности

 ,

perl5_guy
()

Анонсирован порт Perl веб-фреймворка Mojolicoious на Node.js

Новости — Разработка
Группа Разработка

Как сообщает официальный твиттер-аккаунт фреймворка:

Разработка находится на ранней стадии, но в недалёком будущем, мы будем поддерживать Mojolicious как на Perl, так и на Node.js.

На вопрос: «Почему mojo.js?» создатель Mojolicious - Себастьян Ридель, ответил так:

У нас всегда были планы по портированию Mojolicious на другие языки, в оригинале на Perl6... Но мы знаем как всё обернулось. Тем временем, благодаря ES6, JavaScript стал действительно приятным инструментом и в экосистеме Node.js есть местечко для mojo.js.

В последующих твитах Себастьян упомянул пятнадцатикратное ускорение по сравнению с Perl-реализацией.

Напомню, что Mojolicious — мощный и современный веб-фреймворк написанный на языке программирования Perl, обладающий великолепной документацией, а инструментарий «Mojo», созданный в рамках проекта Mojolicious, успешно применяется самостоятельно в различных задачах.

>>> Подробности

 , ,

perl5_guy
()

Rakudo 2021.04

Новости — Разработка
Группа Разработка

Тихо и незаметно вышла версия 2021.04 компилятора языка программирования Raku - Rakudo. Компиляция осуществляется для таких виртуальных машин как: MoarVM, JVM и другие. На данный момент, Rakudo является самым развитым воплощением языка программирования Raku. Данный выпуск реализует версии 6.c и 6.d спецификации.

Следующий релиз предварительно запланирован на 21 мая.

( читать дальше... )

>>> Подробности

 ,

perl5_guy
()

Sawyer X покидает руководящий комитет Perl и перестаёт участвовать в разработке интерпретатора

Новости — Разработка
Группа Разработка

Один из виднейших членов сообщества Perl, многократно бывавший в роли pumpking'а, принял решение покинуть руководящий комитет и приостановить участие в разработке ядра интерпретатора Perl. Причиной стали «преследования, травля и попытки публично пристыдить», в том числе со стороны других разработчиков ядра (имеется ввиду Core team сообщества).

Страсти вокруг интерпретатора кипят не первый месяц, с момента анонса Perl7 и сломе обратной совместимости в сопутствующих новой версии изменениях.

Тем не менее, Sawyer X, намерен выпустить в мае версию 5.34, если другие разработчики и члены комитета не будут возражать.

>>> Подробности

 

perl5_guy
()

Mojolicious 9.11 с исправлением уязвимости

Новости — Разработка
Группа Разработка

Mojolicious – это фреймворк для веб-приложений реального времени, написанный Себастьяном Риделем, создателем фреймворка для веб-приложений Catalyst.

Для устранения уязвимости в версии 9.11 была сломана обратная совместимость. Необходимо обновиться!

Суть изменений в отключении автоматического определения форматов. Например, маршруты, которые раньше обрабатывали запросы «/foo» и «/foo.json», впредь будут отзываться только на «/foo». Доступные форматы необходимо явно перечислять.

>>> Ссылка на коммит с исправлением

 ,

perl5_guy
()

Perl 5.32.2

Новости — Разработка
Группа Разработка

Данная версия является результатом четырёх недель разработки с момента выхода 5.33.1. Изменения внесены 19 авторами в 260 файлов и равны примерно 11,000 строк кода.

Тем не менее, в perldelta обозначено только одно ключевое нововведение:

  • интерпретатор может быть собран с экспериментальным ключом -Dusedefaultstrict, который включает по умолчанию соответствующую прагму. Действие данной настройки не распространяется на однострочники.

В данный момент идут жаркие споры об изменении поведения по умолчанию для Perl7, что приведёт к нарушению обратной совместимости. Данный выпуск проливает свет на выбранный разработчиками интерпретатора курс.

>>> Подробности

 

perl5_guy
()

Опрос о состоянии Rust 2020

Новости — Разработка
Группа Разработка

Сообщество Rust запустило опрос о состоянии языка и экосистемы 2020 State of Rust Survey.

Цель опроса – выявить слабые и сильные стороны языка и определить приоритеты разработки.

Опрос опубликован на нескольких языках, участие анонимно и потребует около 10-15 минут. Ответы принимаются до 24 сентября.

Результаты прошлого года

Ссылка на форму 2020 State of Rust на русском языке

>>> Подробности

 

perl5_guy
()

В Microsoft знают о существовании Raku

Форум — Talks

Level 1:
Guess who!
Man detective

I am a programming language
I am a member of the Perl family
I was renamed in late 2019
My latest stable release is named after a Hindu festival

Пруф

 ,

perl5_guy
()

Mojolicious начал переход на Perl 7

Форум — Development

Начать решили с сигнатур в документации. Себастьян через твиттер призвал членов сообщества помочь с ревью «гигантского pull-запроса»

Твит Себастиана

Перемещено alpha из development

 

perl5_guy
()

Анонсирован выход Perl 7

Новости — Разработка
Группа Разработка

Вчера вечером на «Perl and Raku Conference in the Cloud», Sawyer X анонсировал смену основной версии Perl с 5 на 7. Работы уже ведутся, новая версия выйдет в течение года. Большого количества изменений ждать не стоит, если коротко: Perl 7 это всё тот же Perl 5.32 с современными настройками по умолчанию. Вам больше не надо явно подключать возможности которые вы и так используете, их включат для вас!

( читать дальше... )

Perl 5.32 переходит в режим долгой поддержки на срок от 5 лет.

Развёрнутый анонс от Брайана Д Фоя: https://www.perl.com/article/announcing-perl-7/
TL;DR версия от него же: http://blogs.perl.org/users/brian_d_foy/2020/06/the-perl-7-tldr.html

>>> Подробности

 , perl7

perl5_guy
()

Perl 5.32.0

Новости — Разработка
Группа Разработка

Вышла новая версия интерпретатора языка программирования Perl 5.32.0.

Позади 13 месяцев разработки, 140 тысяч изменённых строк в 880 файлах.

Ключевые нововведения:

  • Новый экспериментальный оператор isa, проверяющий, является ли указанный объект экземпляром переданного класса или класса-наследника:

    if( $obj isa Package::Name ) { ... }
    

  • Поддержка Unicode 13.0!
  • Появилась возможность записывать операторы сравнения с одним приоритетом в виде цепочки:

    if ( $x < $y <= $z ) {...}
    

    Тоже самое что:

    if ( $x < $y && $y <= $z ) {...}
    

    Про данную особенность можно подробней почитать в perlop (раздел «Operator Precedence and Associativity»).
  • Буквенные обозначения утверждений в регулярных выражениях больше не являются экспериментальными. Пример: (*pla:pattern), подробнее в perlre.
  • Возможность ограничения проверяемого шаблона конкретной системой письма (подробнее «Script Runs» в perlre) больше не является экспериментальной.
  • Появилась возможность отключать непрямой вызов методов. Подробнее можно почитать в заметке Брайана Д Фоя.

Некоторые оптимизации:

  • Проверка подключения дополнительных возможностей (features) теперь происходит быстрее.
  • Существенно ускорены специальные случаи для сортировки (речь о {$a <=> $b} и {$b <=> $a} ).

Выбрал только некоторые вещи на свой вкус. Есть иные нововведения, несовместимые с прошлыми версиями изменения, обновления документации и закрытые проблемы безопасности. Предлагаю ознакомиться с полной perldelta по ссылке.

>>> Подробности

 

perl5_guy
()

Облачная конференция по Perl и Raku

Новости — Разработка
Группа Разработка

COVID-19 разогнал всех по домам, но как бы то ни было, у сообщества накопилось много интересных мыслей по Perl и Raku, которыми хочется поделиться.

Присоединяйся к трёхдневному мероприятию насыщенному интересными выступлениями!

Конференция будет проходить с 24 по 26 июня. Купившие билет в 10$, смогут смотреть живые выступления и задавать вопросы докладчикам. Для всех остальных, видеоотчёт будет доступен на ютуб совершенно бесплатно.

Доклады традиционно читают волонтёры и желающие могут поддержать альтруистов рублём.

>>> Подробности

 , ,

perl5_guy
()

Cor - алтернативная ООП система для Perl

Новости — Разработка
Группа Разработка

По ссылке сравнение Cor и Moose. Пример кода:

class Point {
    has ( $x, $y ) :reader :writer :new :isa(Int);

    method clear () {
        ( $x, $y ) = ( 0, 0 );
    }
}

class Point3D isa Point {
    has $z :reader :writer :new :isa(Int);

    method clear () {
        $self->next::method;
        $z = 0;
    }
}

>>> Подробности

 ,

perl5_guy
()

AssaultCube с perl5-парнем

Форум — Games

Поиграем на этих выходных? Дату и время выберем совместно если наберётся достаточное количество народу. В CTF поиграем.

 ,

perl5_guy
()

Новая книга Брайана Ди Фоя: «Mojolicious Web Clients»

Новости — Разработка
Группа Разработка

Книга будет полезна программистам и системным администраторам. Для её чтения достаточно знать основы Perl. Освоив её, вы овладеете мощным и выразительным инструментом, который поможет упростить решение повседневных задач.

В книге освещены:

  • основы HTTP;
  • разбор JSON;
  • разбор XML и HTML;
  • селекторы CSS;
  • непосредственное выполнение HTTP-запросов, аутентификация и работа с cookie;
  • выполнение неблокирующих запросов;
  • обещания.
  • Написание однострочников и модуль ojo. Некоторые примеры:

    % perl -Mojo -E 'g(shift)->save_to("test.html")' mojolicious.org
    % mojo get https://www.mojolicious.org a attr href
    

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

    Брайан обещает обновлять учебник несколько раз в год и в данный момент работает над следующей книгой, посвящённой уже самому веб-фреймворку.

>>> Оглавление

 ,

perl5_guy
()

Аналог ssh-тоннелей для UDP

Форум — Admin

Намучился с разными провайдерами. То роутер подпихнут, на котором порты открыть невозможно, то окукливают мой сервер своим NAT'ом. В общем, арендовал дешевый VDS, чтоб с помощью ssh-туннелей можно было без проблем прокидывать свои веб-приложения из дома или с работы.

Есть ли что-либо подобное и для UDP? Чтоб можно было с друзяшками в игрушки играть без боли и независимо от топологии сети? На openvpn смотреть? Руководства по этой фигне меня вгоняют в ступор.

Почитал про VPN over SSH, про UDP завернутый в TCP и пропущенный через SSH-тоннель - всё это показалось дичью. PPP over SSH выглядит неплохо, но я слабо понимаю что здесь происходит и будет ли оно работать с UDP.

Жду советов мудрых. Заранее спасибо и 359!

 , ,

perl5_guy
()

Регвыр-ребус

Форум — Talks

Угадаете чего сказать хотел?

$h{Разработка} =~ /\w+(?!.*\w)/s;

 ,

perl5_guy
()

9 лет Mojolicious! Праздничный релиз 8.28 с async/await!

Новости — Разработка
Группа Разработка

Mojolicious — современный веб-фреймворк на Perl. Mojo — дочерний проект по разработке набора инструментов для фреймворка. Модули семейства Mojo::* широко применяется и в сторонних проектах.

Пример кода:

use Mojo::Base -strict, -async;

async sub hello_p {
  return 'Hello Mojo!';
}

hello_p()->then(sub { say @_ })->wait;

Больше примеров в документации.

Ранее Perlfoundation выделяла грант на разработку модуля Future::AsyncAwait. Некоторое время спустя, основной разработчик Mojolicious (Себастьян Ридель) сообщал, что ведутся работы по реализации async/await.

Также добавлена экспериментальная поддержка метода all_settled для Mojo::Promise.

>>> Подробности

 ,

perl5_guy
()

Серия статей «По языку в день» от Андрея Шитова

Новости — Разработка
Группа Разработка

Андрей Шитов, известый Perl-разработчик, решил в этом году попробовать как можно больше языков программирования и поделиться опытом с читателями.

Языки программирования восхитительны! Ты влюбляешься в какой-либо язык как только напишешь несколько тестовых программ. Чем больше изучаешь, тем лучше чувствуешь сам язык и идеи положенные в его фундамент.

В рождественском календаре этого года (с 1 по 24 декабря), я буду ежедневно публиковать статьи повествующие об основах различных языков программирования: один день - один язык. Чтобы сделать обзоры более полезными, я постараюсь придерживаться единого формата и разобрать аспекты языка, необходимые для написания следующих мини-проектов:

  • Hello, World!
  • Функция, вычисляющая факториал рекурсивно или в функциональном стиле
  • Программу, создающую массив объектов и выполняющую полиморфный вызов методов на них
  • Реализацию сонной сортировки (sleep sort). Данный алгоритм не применяется в боевых условиях, но замечательно демонстрирует возможности языка в разрезе конкурентности

Список языков:

  • День 1. TypeScript
  • День 2. Rust
  • День 3. Julia
  • День 4. Kotlin
  • День 5. Современный C++
  • День 6. Crystal
  • День 7. Scala
  • День 8. Dart
  • День 9. Hack
  • День 10. Lua
  • День 11. Raku
  • День 12. Elixir
  • День 13. OCaml
  • День 14. Clojure
  • День 15. Nim
  • День 16. V
  • День 17. Go
  • День 18. Hy
  • День 19. Red
  • День 20. Mercury
  • День 21. Elm

>>> Подробности

 ,

perl5_guy
()

Доступен видеоотчёт с London Perl Workshop 2019

Форум — Talks

Нет времени чтоб оформить нормальную новость, поэтому пишу сюда.

Ссылка на youtube-канал

 ,

perl5_guy
()

RSS подписка на новые темы