Вышел Parrot 1.0.0
Вышел релиз Parrot версии 1.0.0, названный Haru Tatsu.
Это первая версия, в которой зафиксирован API для разработчиков компиляторов на основе этой виртуальной машины. Интерфейс останется неизменным по крайней мере до выхода следующей стабильной версии 1.5. Согласно плану развития, отныне стабильные версии будут выходить дважды в год (в январе и июле), для каждой из них предполагается создавать полный набор установочных пакетов для операционных систем (в отличие от ежемесячных промежуточных версий).
К версии 1.0.0 из репозитория Parrot были извлечены компиляторы некоторых языков, вынесенные в самостоятельные проекты. Это коснулось и реализации Perl 6. Полная независимость от исторических следов, однако, планируется только к третьей версии.
Исходные коды и пакеты версии 1.0.0 для разных операционных систем, включая Windows и Mac OS X, доступны на официальном сайте.
parrot — 18 марта 2009
Еще раз о сборке Perl 6
За несколько лет истории Perl 6 существовали несколько разных компиляторов, которые считались основными в то или иное время. Соответственно, несколько раз менялся и набор инструкций, которые нужно было выполнить, чтобы получить работающий компилятор.
Ракудо, который на сегодня является единственным компилятором, который развивается, недавно входил в состав виртуальной машины Parrot, но теперь находится в собственном репозитории. Процесс сборки в очередной раз изменился, и теперь он состоит из двух шагов: установки parrot, а затем собственно rakudo.
Установка Parrot
svn co https://svn.parrot.org/parrot/trunk/ parrot
cd parrot
perl Configure.pl
make
make install
(Последний шаг необязателен.) После этого будет установлена виртуальная машина:
# parrot -V This is parrot version 0.9.0-devel built for i386-linux. Copyright (C) 2001-2008, The Perl Foundation.
Установка Rakudo
Хотя rakudo и находится в отдельном репозитории, дистрибутив желательно скопировать в каталог parrot/languages (там же находится и каталог perl6, который теперь не потребуется).
cd languages
git clone git://github.com/rakudo/rakudo.git rakudo
cd rakudo
perl Configure.pl
make
В каталоге parrot/languages/rakudo теперь должен появиться файл perl6.pbc — скомпилированный в байт-код компилятор Rakudo. Чтобы запустить интерпретатор Perl 6, нужно передать этот файл на исполнение виртуальной машине:
../../parrot perl6.pbc
Для удобства можно создать командный файл, в который записать нужный вызов (в этом примере parrot находится в каталоге /software/parrot):
cat > /usr/bin/perl6
#!/bin/sh /software/parrot/parrot /software/parrot/languages/rakudo/perl6.pbc "$@"
^D
chmod a+x /usr/bin/perl6
Компилятор собран:
# perl6 -v
This is Rakudo Perl 6, revision 36430 built on parrot 0.9.0-devel for i486-linux-gnu-thread-multi.
# perl6
> .say for 1..3
1
2
3
>
Би-би-си за Parrot
К наблюдательному совету Parrot присоединился Куртис По, известный под ником Ovid. Куртис работает ведущим программистом на Би-би-си.
Технический директор Би-би-си Dirk-Willem van Gulik отметил: «Как и большинство крупных компаний, Би-би-си пользуется многими динамическими языками программирования. Мы ожидаем, что хорошо протестированные высококачественные языко-независимые виртуальные машины будут играть важную роль в будущем».
parrot, bbc — 4 ноября 2008
Parrot Developer Summit
15 и 16 ноября состоится первый саммит разработчиков Parrot. Важно отметить, что он пройдет в помещении Google.
parrot — 10 сентября 2008
Новый сайт Parrot
Разработчики виртуальной машины Parrot открыли новый сайт, посвященный этому продукту: www.parrot.org.
parrot — 4 сентября 2008
Установка Perl 6 под парротом
Последние дистрибутивы Parrot (начиная с 0.5.2) содержат полностью работоспособоный и легкий в установке компилятор Perl 6, который, хотя и реализует лишь малую часть того, что должно быть в языке, реанимирует изначальную идею Perl 6 — преобразовывать программу в байт-код и выполнять ее виртуальной машиной.
Дистрибутив Parrot доступен на CPAN и занимает около 5 МБ. Установка проста:
perl Configure.pl make make reallyinstall
(Читатель Dmitriy Dzema из Владивостока пишет: Не советую делать reallyinstall для пэррота. Потом при обновлениях полезут баги. Лучше просто добавить папку со скомпиленным пэрротом в PATH.)
После этого заработает сам Parrot:
$ parrot -V This is parrot version 0.5.2 built for nojit. Copyright (C) 2001-2007, The Perl Foundation.
Чтобы получить perl6, нужно зайти в каталог languages/perl6, и выполнить команду
make perl6
Теперь доступен компилятор Perl 6:
$ perl6 -v This is perl6, revision 0 built on parrot 0.5.2 for darwin-2level. Copyright 2006-2008, The Perl Foundation.
Обратите внимание, что для печати версии Parrot по-прежнему ожидает ключ -V в верхнем регистре, а perl6 - в нижнем.
Rakudo
Реализация Perl 6 на парроте теперь официально называется Rakudo. Сайт проекта — http://rakudo.org.
Название предложил Дамиан Конвей. Это японское слово, которое существует в языке в таком сокращенном виде (оригинально Rakuda-do) и обозначат «Путь верблюда».
rakudo, parrot — 17 января 2008
Вышел Parrot 0.5.1
В списке изменений в только что выпущенной версии Parrot числится важный пункт:
+ perl6: re-implemented using PCT and NQP, new object subsystem
Parrot Win32
François Perrad создал на Sourceforge проект, где планирует размещать ежемесячно обновляемые бинарные версии Parrot'a, скомпилированные для Windows.
Адрес проекта: http://parrotwin32.sourceforge.net/.
Существует еще один давно известный дистрибутив для Windows, автор которого — Jonathan Worthington: http://www.jnthn.net/perl6/.
parrot, windows — 5 декабря 2007
Что такое Parrot
Perl 6 идеологически отличается от предыдущих версий. Вместо того, чтобы сразу пуститься в разбор и исполнение кода, вначале инициативу берет компилятор, который преобразует perl-программу в
Кстати, теперь есть смысл называть код на Perl не скриптом, а программой — точно так же, как называют программой код на C++. Отличие только в том, что на выходе получается
Замечание по поводу эффективности. Я уже столкнулся с мнением о том, что подобное изощренное обращение с исходным кодом резко отражается на эффективности. Ничего подобного. Традиционное выполнение perl-скрипта (Perl 5) не дает никаких гарантий о том, будет ли промежуточный код кэширован или нет,
parrot — 13 октября 2003