Вышел дистрибутив компилятора Perl 6: Rakudo Star
Состоялся первый официальный выпуск компилятора Perl 6 Rakudo.
Rakudo Star - это полноценный дистрибутив Perl 6 достаточный для начала работы и включает в себя выпуск #31 компилятора Rakudo Perl 6 , Parrot Virtual Machine версии 2.6.0, дополнительные модули и документацию.
Rakudo Star доступен в виде исходных кодов(tar.gz) и сборки для Windows(msi)
Возможности Perl 6, включённые в первую версию Rakudo Star:
- грамматика и регулярные выражения Perl 6;
- списки и признаки формальных параметров (formal parameter lists and signatures);
- метаоператоры;
- постепенная типизация (gradual typing);
- мощная объектная модель, включающая роли и классы;
- отложенная интерпретация списков (lazy list evaluation);
- множественный вызов (multiple dispatch);
- умное сопоставление (smart matching);
- соединения и автоматические потоки (junctions and autothreading);
- перегрузка операторов (в данный момент не полностью реализовано);
- рефлексия (introspection);
- каррирование;
- обширная библиотека встроенных операторов, функций и типов;
- интерактивная командная оболочка;
- поддержка Unicode (неполная);
- возобновляемые исключения (resumable exceptions).
Неполный список модулей Perl 6, включённых в Rakudo Star:
- Blizkost — позволяет использовать модули Perl 5;
- MiniDBI — простой интерфейс к БД для Rakudo Perl 6;
- Zavolaj — вызов библиотек C из Rakudo Perl 6;
- SVG и SVG::Plot — создание SVG;
- HTTP::Daemon — простой HTTP-сервер;
- XML::Writer — запись XML;
- YAML — вывод объектов Perl 6 как YAML;
- Test::Mock — создание имитации объектов;
- Math::Model — описание и исполнение математических моделей;
- Config::INI — разбор и запись конфигурационных файлов;
- File::Find — поиск файлов;
- LWP::Simple — загрузка данных из Интернета.
В Rakudo Star отсутствуют следующие особенности Perl 6:
- вложенное определение пакетов (nested package definitions);
- двоичные объекты, "родные" типы, pack и unpack;
- типизированные массивы;
- макросы;
- переменные состояния (state variables);
- потоки и параллелизм;
- предварительные и последующие ограничения (pre and post constraints, and some other phasers);
- интерактивное чтение вводимых строк с поддержкой Unicode(readline);
- управляющие последовательности символов в регулярных выражениях (backslash escapes in regex <[...]> character classes);
- неблокирующий ввод/вывод;
- значительная часть Synopsis 9;
- утилиты манипуляции документацией perl6doc (pod).
Rakudo Star также содержит черновик книги о Perl 6.