Состоялся (http://rakudo.org/2017/11/09/announce-rakudo-star-release-20.../) релиз пакета Rakudo Star 2017.10 (http://rakudo.org/), включающего компилятор Rakudo, виртуальную машину MoarVM, документацию, модули и инструменты, необходимые для разработки на языке Perl 6. Компилятор соответствует спецификации Perl v6.c, за исключением поддержки расширенных макросов, неблокирующего ввода/вывода и ряда мелких особенностей, которые планируется довести до рабочего состояния в будущих выпусках. В качестве виртуальной машины для исполнения байткода предлагается MoarVM (http://moarvm.org/), которая проходит все тесты (альтернативный бэкенд на базе JVM пока не обладает всей необходимой функциональностью).В новой версии обновлён инструментарий управления установкой модулей zef (https://github.com/ugexe/zef), заменивший собой устаревшую утилиту panda, код которой исключён из поставки. В состав включены новые модули perl6-datetime-format и Test-META (плюс зависимости JSON-Class, JSON-Marshal, JSON-Name, JSON-Unmarshal и META6). Добавлена новая версия модуля DBIish.
URL: http://rakudo.org/2017/11/09/announce-rakudo-star-release-20.../
Новость: http://www.opennet.me/opennews/art.shtml?num=47549
А что есть из софта, что написано на Perl 6?
Серьезного ничего, баловства хватает. Разница в скорости с perl5 на два порядка - это приговор данной реализации языка.
time perl -E 'my $sum = 0; for (my $i = 1; $i <= 100000000; $i++) { $sum += $i; }; say $sum' # real 0m8.459s
time perl6 -e 'my int $sum = 0; loop (my int $i = 1; $i <= 100000000; $i++) { $sum = $sum + $i; }' # real 0m2.068s
time perl6 -e 'say [+] 0..100000000' # real 0m0.158sРазница в 2 порядка будет, если программировать на Perl 6 в стиле Perl 5.
Впрочем, после утверждения "Perl 6 обратно совместим с Perl 5" обнаружить, что "Модули, написанные на Perl 5 будут выполняться в 100 раз медленнее" -- это, конечно, подстава.
тут как я понимаю немного нечестно
> Разница в 2 порядка будет, если программировать на Perl 6 в стиле Perl 5Судя по коду, ты на perl5 пишешь в стиле C. Нормальный программист на perl такое никогда не напишет. Блин, да в доке есть целая секция для таких, объясняющая почему так делать не надо.
$ time perl -E 'my $sum = 0; for (my $i = 1; $i <= 100000000; $i++) { $sum += $i; }; say $sum'
5000000050000000real 0m7.058s
$ time perl -E '$sum+=$_ for 1..100000000;say $sum'
5000000050000000real 0m5.652s
А разница на два порядка проявляется не в тривиальной арифметике, а в такой регулярно встречающейся операции как push, то бишь с самым главным, управлением памятью, там всё очень печально.
>> Разница в 2 порядка будет, если программировать на Perl 6 в стиле Perl 5
> Судя по коду, ты на perl5 пишешь в стиле C. Нормальный программист
> на perl такое никогда не напишет.Поймали. Смухлевал.
> А разница на два порядка проявляется не в тривиальной арифметике, а в
> такой регулярно встречающейся операции как push, то бишь с самым главным,
> управлением памятью, там всё очень печально.Поймали. Вбросил.
Ладно, я безапелляционно неправ. Приношу свои извинения. Зря я так. :)
>> А разница на два порядка проявляется не в тривиальной арифметике, а в такой регулярно встречающейся операции как push, то бишь с самым главным, управлением памятью, там всё очень печально.Тогда в чём же его смысл?
И это после того как его выпилили из rhel 7.4
А там когда-то был сабж? Или ты не отличаешь perl и perl6 ?
Эту поделку ещё не зарыли?? Харэ, ребзя. Ну довели вы его до релизного состояния за 10 лет, молодцы, доказали, что можете. Зачем распылять усилия сообщества?