URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 109754
[ Назад ]

Исходное сообщение
"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"

Отправлено opennews , 28-Ноя-16 11:56 
Доступен (http://rakudo.org/2016/11/27/announce-rakudo-star-release-20.../) релиз пакета Rakudo Star 2016.11 (http://rakudo.org/), включающего компилятор Rakudo, виртуальную машину MoarVM, документацию, модули и инструменты, необходимые  для разработки на языке Perl 6. Компилятор соответствует спецификации Perl v6.c, за исключением поддержки расширенных макросов, неблокирующего ввода/вывода и ряда мелких особенностей, которые планируется довести до рабочего состояния в будущих выпусках. В качестве виртуальной машины для исполнения байткода предлагается MoarVM (http://moarvm.org/), которая проходит все  тесты (альтернативный бэкенд на базе JVM пока не обладает всей необходимой функциональностью).


В новой версии основное внимание уделено работе над ошибками и оптимизации производительности. Из изменений можно отметить улучшение средств вывода предупреждений и ошибок, обеспечение сборки MoarVM в любых выпусках  macOS, возможность сборки Rakudo в Solaris. В конструктор объектов добавлен субметод TWEAK, добавлена процедура parse-base, добавлен метод форматирования времени DateTime.hh-mm-ss, представлены итераторы  Iterator.skip-one и Iterator.skip-at-least.


Из оптимизаций выделяется ускорение работы slip(@a) в 1.2 раза, сокращение времени инициализации массивов,  ускорение  работы Str.match в режиме ":nth" в два раза, ускорение работы Str.comb(Regex) в семь раз, ускорение операций  Str.subst/subst-mutate на 30%, ускорение Match.Str|prematch|postmatch в два раза, ускорение опекраций "~~ /foo/" с хэшами и списками в два раза, увеличение производительности подстановок "Str:", "type:", "Range:",  "Int:", "Seq:", "Hash:" в 1.5-14 раз, ускорение работы  IO::Spec::Unix.canonpath в  7-50 раз, увеличение скорости копирования массивов в 10-20 раз, ускорение доступа к двумерным и трёхмерным массивам в 7 раз.


URL: http://rakudo.org/2016/11/27/announce-rakudo-star-release-20.../
Новость: http://www.opennet.me/opennews/art.shtml?num=45574


Содержание

Сообщения в этом обсуждении
"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Аноним Анонимович Анонимов , 28-Ноя-16 12:27 
Однако.

>в 1.5-14 раз
>в 7-50 раз
>в 7 раз


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Аноним , 28-Ноя-16 13:58 
клоун: В каких условиях, в каких задачах?

Если у МКАДа убрать все съезды, кроме одного, то можно очень быстро ездить по кругу.


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено rshadow , 28-Ноя-16 14:36 
Согласен. Все познается в сравнении. Бенчмарки в студию!

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено angra , 28-Ноя-16 22:21 
В последний раз, когда я его тестировал он почти на два порядка уступал perl5 на простых операциях типа добавления в массив. Так что здесь не столько заслуга оптимизаторов, сколько недоработка тех, кто писал начальный код.

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено angra , 28-Ноя-16 22:55 
Протестировал эту версию.
Не знаю что они там оптимизировали с массивами, но вот такой простейший код 'my @a;push @a,$_ for 1..1000000' выполняется уже не в 40, а в 220 раз медленнее perl5. То есть по сравнению с прошлой(2016.10) версией базовая операция с массивом стала медленнее в 5 раз.

Ну что сказать. Молодцы, круто оптимизировали, верной дорогой на свалку истории.


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Аноним , 28-Ноя-16 12:44 
Кто и где использует P6?
Есть такие?

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Аноним , 28-Ноя-16 13:22 
Те, кто родом из 90-х и кто не захотел переучиваться, а довел в совершенстве знания Perl и теперь использует его с синдромом "утенка" или "молотка".

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено saahriktu , 28-Ноя-16 13:40 
Между Perl 5 и Perl 6 большая разница. Perl 5 более удобный. В частности, например, Perl 5 знает целую кучу кодировок, включая KOI8-R, а Perl 6 заточен исключительно под UTF-8.

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Плазма полетела , 28-Ноя-16 13:58 
Все не UTF-8 кодировки уже давным-давно должны были умереть. Те, кто их использует, должны страдать.

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено rshadow , 28-Ноя-16 14:37 
> исключительно под UTF-8

И тот поломан.


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено angra , 28-Ноя-16 22:24 
Сразу видно, что ты совсем ничего не знаешь про perl и perl6.

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено chinarulezzz , 28-Ноя-16 15:19 
Хорошая новость. Столкнулся с тем, что сборочная система не понимает DESTDIR.

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено freehck , 29-Ноя-16 09:07 
Кстати да. В последнее время новый тренд идёт: писать сборочные сценарии через какое угодно место, но вот чтобы "как раньше" - не было.

Вот давеча заказывали у конторки одной написать немного кода. Предоставили они нам результат, а у них там в install-скриптах докер запускается, буст из сети подгружается, и вообще хз что творится. А нам это в сборочную интегрировать...


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Аноним , 28-Ноя-16 16:02 
И зачем оно?

$ time yes | head -n1000000 | perl -pe 's/y/n/' >/dev/null

real    0m1.364s
user    0m1.364s
sys    0m0.012s

$ time yes | head -n1000000 | perl6 -pe 's/y/n/' >/dev/null

real    5m36.318s
user    5m34.352s
sys    0m1.000s

Я обычно не люблю мемосики вообще и про Карла в частности, но... В 240 раз, Карл! И все эти 5 с половиной минут в top процесс moar жрал 100 % CPU.

У меня всё.


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Аноним , 28-Ноя-16 16:27 
>(альтернативный бэкенд на базе JVM пока не обладает всей необходимой функциональностью).

То есть, получается, жаба еще не умеет так тормозить? :)


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Аноним , 28-Ноя-16 17:05 
Обещают запилить в Java 9. Ждём-с.

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Аноним , 28-Ноя-16 17:02 
К суровому ынтерпрайзу готово!

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Саша , 28-Ноя-16 22:45 
time yes | head -n1000000 | perl -pe 's/y/n/' >/dev/null

real    0m1.079s
user    0m1.084s
sys    0m0.004s


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Саша , 28-Ноя-16 22:49 
> И зачем оно?
> $ time yes | head -n1000000 | perl -pe 's/y/n/' >/dev/null
> real 0m1.364s
> user 0m1.364s
> sys 0m0.012s
> $ time yes | head -n1000000 | perl6 -pe 's/y/n/' >/dev/null
> real 5m36.318s
> user 5m34.352s
> sys 0m1.000s

time yes | head -n1000000 | perl6 -pe 's/y/n/' >/dev/null
Программа 'perl6' на данный момент не установлена. Вы можете установить её, выполнив:
sudo apt install rakudo

real    0m0.259s
user    0m0.124s
sys    0m0.044s


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено angra , 28-Ноя-16 22:49 
Саша, ты дурак?

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено angra , 28-Ноя-16 23:07 
> У меня всё.

А я, пожалуй, добавлю

$ time yes | head -n1000000 | perl -pe  '' >/dev/null

real    0m0.217s
user    0m0.241s
sys    0m0.011s

$ time yes | head -n1000000 | perl6 -pe  '' >/dev/null

real    0m19.550s
user    0m19.263s
sys    0m0.314s


"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено Noname , 29-Ноя-16 13:52 
Просто виртуальная машина медленно стартует.

"Выпуск Rakudo Star 2016.11, дистрибутива Perl 6"
Отправлено ыы , 29-Ноя-16 10:42 
>ускорение работы slip(@a) в 1.2 раза,

Улыбнуло...