Вышел (http://parrot.org/news/2011/parrot-3.0.0) релиз виртуальной машины для динамических языков программирования Parrot 3.0.0 (http://parrot.org/), в первую очередь используемой в проекте Rakudo Perl 6 (http://rakudo.org/). Parrot поддерживает выполнение универсального байткода, в который могут быть скомпилированы программы на таких языках, как Perl 6,
Tcl (http://code.google.com/p/partcl/), Javascript (http://users.fulladsl.be/spb1622/pjs/), Ruby (http://cardinal2.rubyforge.org/), Lua, Scheme, PHP (http://wiki.github.com/bschmalhofer/pipp), Python (http://code.google.com/p/pynie/), APL (http://code.google.com/p/paraplegic/).
В новой версии представлен новый API ("parrot/api.h") для встраивания виртуальной машины в приложения. Полиморфные контейнеры Packfile реструктуризированы и теперь могут быть использованы для генерации исполняемого байткода. Улучшена поддержка Unicode для файлового ввода/вывода, переменных окружения, имен программ и параметров командной сроки. Добавлена ...URL: http://parrot.org/news/2011/parrot-3.0.0
Новость: http://www.opennet.me/opennews/art.shtml?num=29306
Просветите, пожалуйста, неуча: почему бы не использовать под перл любую другую виртуальную машину, ну например из Ruby? Т.е. в чем состоят отличия от аналогов?
Ответ кроется в названии. Они любят повторять за другими.
Брат мой :) Из Ruby не получится без допиливания, потому что она разрабатывалась как машина для Ruby.Parrot и LLVM разрабатываются как универсальные виртуальные машины, поэтому адаптация к ним попроще. Но всё равно, по крайней мере сейчас они используются редко - у Python, PHP, Ruby, Perl - свои собственные машины по умолчанию. Возможно в будущем и состоится переход, но пока - зоопарк, под каждый язык. Кстати, Mono и JVM - из той же серии.
Ждём когда допилят L1 (аля микокод) и перетрясут формат запускаемых файлов вирт машины pbc.
Если у них получиться будет идеальная VM.
А можно поподробнее, с ссылками. А то непонятно про что мысль.
Вот ссылки:
http://whiteknight.github.com/2010/12/11/lorito_first_though...
http://whiteknight.github.com/2011/01/07/parrot_in_2011.html
Ну и дела. Два года назад был релиз 1.0.0, год назад 2.0.0, теперь уже 3.0.0.
Не слишком ли они резко номера версий меняют? Неужели, там столь значительный объём изменений?
Сомнительно. Как-то это не в традициях свободного софта, IMHO.
Угу. Скажи это Google. У Chromium версии растут как на дрожжах :)
надо же догнать версию Perl
скорость уже приблизилась к скорости perl5 ?
Вово это главный вопрос. Последний раз когда смотрел оно тормозило и жрало память на порядок сильнее чем p5.
> скорость уже приблизилась к скорости perl5 ?Вы перепутали Rakudo(интерпретатор Perl6 для Parrot) и собственно сам Parrot
Я другой аноним, но меня также печалит скорость работы rakudo и количество памяти, отжираемое parrot'ом. А ведь так хочется чтобы эти технологии "выстрелили", но пока всё никак...
Обязательно выстрелят, виртуальная машина, по идее, и должна жрать много оперативы, за счет своих хитрых структур данных. А вот почему перл6 такой медленный, хз.
Заметил, что исходники Rakudo мало весят, может пока разработчики озадачены реализацией полной спецификации, и и пока не до скорости.