LINUX.ORG.RU

Как использовать виртуальную машину Parrot

 


0

0

В первой статье цикла описываются общие характеристики и принципы функционирования виртуальной машины Parrot, а также приводятся примеры исходного кода.
Во второй части будут подробно рассмотрены механизм компиляции и инструментальные средства; кроме того, мы поговорим о взаимодействии Parrot с различными языками программирования.

>>> Подробности

★★★

Проверено: mono ()

Отличная статья. И очень вовремя, учитывая скорый релиз Rakudo *

kranky ★★★★★ ()

Прочитал. Типично для IBM_dW, статья поверхностная. Но в качестве введения - вполне нормально.

Manhunt ★★★★★ ()

Неплохо.Но не так глубоко

pinachet ★★★★★ ()

Жду следующую статью «Зачем использовать виртуальную машину Parrot».

KblCb ★★★★★ ()

Q: Как использовать виртуальную машину Parrot?
A: Пиастры! Пиастры!
А вообще, занятно. Читаю.

dogbert ★★★★★ ()

> В виртуальной машине Parrot реализована подсистема оперативной компиляции «на ходу», во время выполнения, или JIT-компиляция (JIT – Just-In-Time).

Вопрос: 1) насколько быстр? 2) какие апаратные платформы держит? 3) я могу применить PySide (Qt) + Python + Parrot + JIT из parrot?

I-Love-Microsoft ★★★★★ ()

неужто у ibmdw что-то полезное, почитаем, спасибо

muhas ★★★ ()
Ответ на: комментарий от I-Love-Microsoft

1.из его тестов (папка benchmark) факториал считается в среднем в два раза 2. Там где есть gcc 3. Qt обвязки нету покаместь.

pinachet ★★★★★ ()
Ответ на: комментарий от kranky

Да книжка хороша.Но примеров для обучения маловато.
Вообще лучше всего 26 уроков мориса ленца

pinachet ★★★★★ ()

>По замыслу авторов, программисту должна быть предоставлена возможность написать класс на Perl, его подкласс на Python, а затем создавать экземпляры этого подкласса в Tcl-программе.

Вот так сборная солянка получится. :)

Demon37 ★★★★ ()
Ответ на: комментарий от KblCb

> Жду следующую статью «Зачем использовать виртуальную машину Parrot».

++

На этот вопрос надо было в первую очередь отвечать.

ebonent ★★ ()
Ответ на: комментарий от KblCb

>Жду следующую статью «Зачем использовать виртуальную машину Parrot».

ты украл мой комент

saguro ()
Ответ на: комментарий от KblCb

>Жду следующую статью «Зачем использовать виртуальную машину Parrot».

Конечно же, из-за Perl 6 !!!

annulen ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

На счёт быстроты: сейчас собрал parrot 2.3.0 на gcc 4.4.3 с включенной оптимизацией. На рекурсивном поиске чисел фибоначчи он в два раза медленнее чем перл 5.10 из убунты, но в 4 раза быстрее питона 2.6.5 оттуда же.

kranky ★★★★★ ()
Ответ на: комментарий от kranky

Там по умолчание все в отладке собирается.Так что поиграйся с флагами того же gc .Скорость должна вырасти.
P.S. Жду rakudo *

pinachet ★★★★★ ()
Ответ на: комментарий от kranky

Спасибо, не думал что пистон так жутко сливает перлу в математике.

anonizmus ()
Ответ на: комментарий от kranky

> На рекурсивном поиске чисел фибоначчи он в два раза медленнее чем перл 5.10 из убунты

Может, дело в JIT? Попробуй запущщать один холостой прогон, затем уже с подсчётом.

matumba ★★★★★ ()
Ответ на: комментарий от matumba

Мне кажется что там лучше в цикле несколько прогонов ставить и считать среднее, и что это аффтар уже делал, он же не идиот. Правда ?

anonizmus ()

Мне первый раз смешно от заголовка новости. Жду следующих статей «Почему не надо закапывать FreeBSD» и «Зачем Моно нуно?»

anonymous ()
Ответ на: комментарий от anonizmus

>Мне кажется что там лучше в цикле несколько прогонов ставить и считать среднее, и что это аффтар уже делал

Да, так и было. Кстати если предварительно скомпилировать в parrot-байткод, то получается немного быстрее, но всё равно перлу сильно проигрывает.

kranky ★★★★★ ()
Ответ на: комментарий от kranky

«Предварительная оптимизация - корень всех зол» (с) Д. Кнут.

NoName ()

ужос

Perl - убедительный повод для введения запрета на допуск лингвистов к созданию языков программирования. когда ж оно наконец умрет ?

qwerky ()
Ответ на: комментарий от NoName

> Зачем нужен Parrot?

Виртуальная машина спроектированная для языков с динамической типизацией. Java VM и mono архитектурно корявы, так как не предназначались для динамических языков.

anonymous ()
Ответ на: ужос от qwerky

Re: ужос

> Perl - убедительный повод для введения запрета на допуск лингвистов к созданию языков программирования. когда ж оно наконец умрет ?

После тебя, твоих детей и детей твоих детей. Смирись. Придеться с ним жить. Ибо, не смотря на то, что он коряв. У него есть одно главное достоинство. В отличии от многих, он работает. А так как интерес разработчиков перенесен в другое место, то еще и бесконечно стабилен.

anonymous ()
Ответ на: комментарий от NoName

> «Предварительная оптимизация - корень всех зол» (с) Д. Кнут.

Доооо.... А костыли, прикручиваемые в конце разработки - бобро! (ц) Трольвадс

matumba ★★★★★ ()
Ответ на: комментарий от anonizmus

Кода я не видел, а вот ваш коммент попахивает ламеризмом. Вы уверены, что понимаете о чём речь? JIT, jit, jit.... *повторять до просветления*

matumba ★★★★★ ()
Ответ на: комментарий от matumba

Ну так повторяй дальше, это волшебное для тебя слово. Можешь еще про горячий и холодный запуск прочитать в интернете, заодно может дойдет про что я говорил. Хотя я уже и не надеюсь, сейчас в ПТУ учат вас что-то совсем плохо.

anonizmus ()
Ответ на: ужос от qwerky

Re: ужос

> Perl - убедительный повод для введения запрета на допуск лингвистов к созданию языков программирования. когда ж оно наконец умрет ?

Думаю после того как ты умрёшь.

RAS ()

также рекомендую обратить внимание на neko. Создатель языка haxe (который можно компилить в эту самую neko) в 2006 году протестил neko и parrot и пришел к выводу что neko в 5 раз быстрее. Обсуждение результатов превратилось в holywar (в частности, код тестов признан неудачным и не использующим конструкции, реально оптимизированные в ВМ) и больше сравнительной информации в сети особо не наблюдается.

mad_fashist ()
Ответ на: комментарий от mad_fashist

Одно маленькое [b]НО[/b]: ваша «нека» заточена под один ненужный язык, и ниразу не универсальная. Да и последний релиз вышел год назад, так что похоже RIP.

kranky ★★★★★ ()

«Как использовать виртуальную машину Parrot»

Странно почему не пишут статьи как использовать VirtualBox например. Когда да же к линоуксовому бильярду нужно читать маны альтернативно одаренных разрабов - во общем все печально.

anonymous ()
Ответ на: комментарий от kranky

Язык очень даже нужный, я очень многое на нём пишу, например, забил болт на JavaScript - haXe обеспечивает все кроссброузерные override'ы, код в десяток раз короче (не шучу). Также возможно разрабатывать то что можно скомпилить как в PHP (для хостинга), так и в neko (для своего сервера, выигрыш в производительности во много-много раз). Но раз мы уж говорим о машине, а не о haXe - да, она давно не обновлялась, но вполне рабочая. И не заточена она под haXe, это haXe умеет компилить в её байткод, и не только под неё. Что мне в ней нравится - так это то что её тулзы позволяют собрать машину с байт-кодом программы в один бинарник/екзешник, в т.ч. юзать OpenGL (не отрицаю своей зелёности, возможно, в parrot давно можно делать то же).

mad_fashist ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.