perl6.suОсвоим perl6 к 2015 году!

установка


       Itaque, имеем Debian Lenny. Скачиваем и распаковываем файл с дистрибутивом Rakudo Star:
       wget http://github.com/downloads/rakudo/star/rakudo-star-2010.07.tar.gz
       tar -zxf rakudo-star-2010.07.tar.gz
       Заходим сразу как root.
       Заходим в образовавшийся каталог:
       cd rakudo-star-2010.07
       Читаем README.
       Нужно, чтобы стоял make и был уже Perl 5.8.4 или новее. make есть, perl имеем 5.10.
       Написано, что для дебиана или убунту нужно ещё кое-что:
       aptitude install build-essential libicu-dev subversion
       Выполняем. Читаем дальше. Ещё кое-что нужно:
       aptitude install libreadline5-dev
       Ставим. Читаем. Ещё:
       aptitude install libperl-dev
       Читаем. Убеждаемся, что находимся в каталоге, где имеем Configure.pl. Выполняем:
       perl Configure.pl --gen-parrot
       make
       make install
       Теперь имеем всё наше долгожданное богатство в одном каталоге, install. Читаем дальше. Хорошо бы сразу поставить модуль Blizkost, который позволит запускать модули из perl 5. Это хорошо.
       make blizkost-install
       Похоже, что близкость тоже установилась в install. По крайней мере, в install/bin имеем parrot-blizkost. Ладно, потом разберёмся. Нам надо наконец положить каталог install в подходящее место. Можно например в /usr/local:
       cp -rf install/* /usr/local
       Мешает копированию ссылка man -> share/man. Удаляем её, повторяем копирование. Всё удачно скопировалось. Теперь у нас в командной строке поселился perl6:
       perl6 -v
       Созерцаем:
       This is Rakudo Perl 6, version 2010.07-47-g9fd5eaa built on parrot 2.6.0
       Copyright 2008-2010, The Perl Foundation
       Но мы добиваемся того, чтобы можно было начинать наши скрипты с "#!/usr/bin/perl6". Поэтому делаем ссылку:
       ln -s /usr/local/bin/perl6 /usr/bin
       Нас терзают смутные сомнения. На всякий случай добавляем ссылку на паррот:
       ln -s /usr/local/bin/parrot /usr/bin
       Пробуем наш скрипт:
    
#!/usr/bin/perl6
print "Hello world!\n";
say "Здравствуй, мир!";
"Ave mundus!\n".print;
"Освоим perl 6 к 2015 году!".say;
Hello world!
Здравствуй, мир!
Ave mundus!
Освоим perl 6 к 2015 году!

       Прыгаем от счастья. Можно программировать.

Extra
http://github.com/downloads/rakudo/star/rakudo-star-2010.07.tar.gz   
# mutatio postrema: 28 Apr 2011


       26 августа произошел второй по счету релиз звездного ракудо, 2010.08.
       Correctiones:
       - исправили утечку памяти для циклов
       - местами значительное ускорение
       - etc.
       Качаем. Разархивируем. Читаем README. Вроде бы для debian новых зависимостей не добавлено. Ставим.
       perl Configure.pl --gen-parrot
       make
       make install
       Ставим сразу близкость. Надо же её рано или поздно попробовать.
       make blizkost-install
       Переносим все добро на место:
       cp -rf install/* /usr/local
       Itaque...
       perl6 -v
       This is Rakudo Perl 6, version 2010.08 built on parrot 2.7.0
       Copyright 2008-2010, The Perl Foundation
       Имеем новую версию ракудо.

Extra
http://github.com/rakudo/star/downloads   
http://rakudo.org   
# mutatio postrema: 27 Aug 2010


       29 сентября 2010 года вышел новый релиз ракудо, 2010.09. Всякие разные улучшения. Ставим всё как и в прошлые разы.
       Сразу проверяем на производительность, складывая числа. Ничего с прошлого раза не изменилось. Утечка памяти, ошибка сегментирования. Будем ждать следующих релизов.

Extra
http://github.com/rakudo/star/downloads   
# mutatio postrema: 1 Oct 2010


       Пропустив октябрьский релиз, смотрим новый выпуск ракудо, 2010.11. Опять разные улучшения, но до полноценного выпуска, видимо, еще очень далеко.
       Brevi manu ставим:
       perl Configure.pl --gen-parrot
       make
       make install
       В этот раз компиляция заняла изрядное время.
       Сразу проверяем на производительность, складывая числа. Пятый перл за 0.146 секунды складывает числа от одного до миллиона. Шестой за... Я честно ждал 42 минуты, но так и не дождался. Утечка памяти замедлилась раз в сто, но есть.

Extra
http://github.com/rakudo/star/downloads   
# mutatio postrema: 29 Nov 2010


       Декабрьский выпуск ракудо.
       Ставим как обычно. У меня свеженький Debian "Squeeze". Поэтому надо предварительно не забыть:
       aptitude install build-essential libicu-dev subversion libreadline5-dev
       Близкость не захотела компилироваться:
       /usr/bin/ld: cannot find -lperl
       Доверившись интуиции, я внимательно прочитал README. Оказалось, что забыл:
       aptitude install libperl-dev
       Производительность не изменилась. За пять минут утекло оголо гигабайта памяти.

Extra
http://github.com/rakudo/star/downloads   
# mutatio postrema: 3 Jan 2011


       С пропуском в два месяца вышел апрельский ракудо.
       Ставим как обычно, только теперь потребовалось явно указать --prefix=
       perl Configure.pl --prefix=/usr/local --gen-parrot
       make
       make install
       make blizkost-install
       Пора посчитать сколько будет сумма чисел от одного до миллиона.
       Прошло полчаса...
       Скрипт отъел 1.2 гигабайта оперативки, но стойко выполняется.
       А еще перестали выполняться многие примеры на этом сайте...

Extra
http://github.com/rakudo/star/downloads   
# mutatio postrema: 20 Aug 2011


       Спустя три месяца вышло новое ракудо.
       Ставим как обычно...
       Складываем как обычно числа от одного до миллиона...
       Прошло всего лишь 14 минут. Хотя памяти отъело полтора гига из двух, но все же скрипт доработал до конца и вывел верную сумму.

Extra
http://github.com/rakudo/star/downloads   
# mutatio postrema: 20 Aug 2011


       Спустя большой промежуток времени вышло новое ракудо.
       Ставим как обычно...
       Почему-то не получается поставить blizkost (make: "нет правила для сборки цели...")
       Складываем как обычно числа от одного до миллиона...
       Прошло всего лишь 43 секунды, что относительно предыдущих версий совсем не плохо. Понятно, что производительность нельзя исчислять только скоростью складывания натуральных чисел, но эти 43 секунды уже радуют. Для сравнения: perl 5 проделывает то же самое у меня на машине за 0.15 сек. Разница почти в триста раз.
       Утечка памяти тоже изменилась. Почти сразу скрипт отъедает где-то 380 МБ, затем почти перестает это делать.
       На сайте ракудо перечислен ряд изменений. Exempli gratia:
       - теперь дистрибутив ракудо основан на новой модели объектов ("nom"), что позволило разработчиком расширить функционал и повысить корректность,
       - значительное улучшение производительности,
       - поддержка POD6
       - et cetera.
       Запустив скрипты-опыты из предыдущих 99 нот, я обнаружил ряд поломок. Например в ряде случаев метод round работает некорректно. Цепочка действий теперь может включать не более 160 оных (раньше было 240).
       Видимо, должно пройти еще полгода-год, прежде чем rakudo можно будет использовать в работе. Ну что же, будем пока потихоньку продолжать изучение.
       NB. В каталоге docs дистрибутива есть интересная шпаргалка cheatsheet.txt. Надо поизучать.

Extra
http://rakudo.org   
http://github.com/rakudo/star/downloads   
# mutatio postrema: 30 Jan 2012

   установка, производительность      charta situs       nota I, nota XXXIII, nota LXXXI, nota LXXXII, nota LXXXIII, nota LXXXIV, nota LXXXV, nota C   

    RSS     stdin@perl6.su    © Alexius Karmanov, 2010-2011