LINUX.ORG.RU

Parrot 1.4

 , ,


0

0

Вышла версия 1.4 платформы для динамических языков. Она включает в себя средства для создания и проверки грамматики языка PGE, средства для создания компилятора PCT, виртуальную машину PIR и библиотеки. Благодаря простоте разработки языков программирования, для платформы уже существуют реализации десятков языков программирования в том числе Python, Ruby, Lua, Sheme, Javascript, NQP (Not Quite Perl 6), Brainfuck. Также есть компиляторы из байткодов Java и .Net в PIR. Некоторые изменения:

  • добавлен экспериментальный «Infinite Memory» GC
  • усовершенствования в pbc_to_exe и Win64
  • книга о PIR сдана в печать
  • начата работа над библиотекой OpenGL::Math

Тем временем Rakudo (компилятор Perl 6) выходит на финишную прямую. Осталось около 200 тестов, которые нужно перевести на платформу Parrot (для сравнения, более 17000 уже перенесено и около 15000 проходят успешно).

>>> Parrot 1.4.0 "Mundo Cani" Released!

Re: Parrot 1.4

я теперь смогу на jQuery писать свои приложения ?

phasma ★☆ ()

Re: Parrot 1.4

>Осталось окло Heil spellcheck!

lexa_ ()

Re: Parrot 1.4

Кто-нибудь его использовал irl (в проектах)?

Как оно по сравнению с llvm (или совсем не та степь)?

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

> Как оно по сравнению с llvm (или совсем не та степь)?

То, что Unladen Swallow делается на LLVM, как бы намекает на ненужность Parrot.

tailgunner ★★★★★ ()

Re: Parrot 1.4

может быть не "отравлена", а "отправлена"? А лучше вообще "сдана в печать". И gc это всё таки "он".

GArik ★★★ ()

Re: Parrot 1.4

Надо будет поглядеть...

smh ★★★ ()
Ответ на: Re: Parrot 1.4 от vasdi

Re: Parrot 1.4

Посмотрел список языков. ДА! ДА! ДА! ДА! Даёш Brainf**k, LOLCODE и Unlambda с библиотеками Python и Perl!

vasdi ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>> Как оно по сравнению с llvm (или совсем не та степь)?

>То, что Unladen Swallow делается на LLVM, как бы намекает...

ну, имхо это обусловлено наличием c++...

>на ненужность Parrot

зря Вы так, батенька, там же есть lisp, lua и даже bf собственной персоной...

гораздо интереснее сравнить их по скорости/переносимости whatever...

shty ★★★★★ ()

Re: Parrot 1.4

Как с производительностью? Далёк ли тот день, когда python в parrot будет быстрее cpython'а?

И будет ли это сопровождаться съеданием всей оперативки?

Davidov ★★★★ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

У LLVM нет ничего похожего на PGE и PCT, так что посмотрим, кто кого.

grim ★★★☆ ()
Ответ на: Re: Parrot 1.4 от phasma

Re: Parrot 1.4

>я теперь смогу на jQuery писать свои приложения ?
Это как всегда троллинг, или вы видите применение jQuery за пределами DOM браузера?

grim ★★★☆ ()

Re: Parrot 1.4

нарыл инфу от анонимных аналитиков...

>LLVM is that it is a low level interpreter, near to the actual hardware. Parrot probably is itself, but the big bonus with Parrot is that it inherits a huge library from Perl and CPAN. That's the advantage for somebody developing a new language: an already existing massive library. Like the advantage the Java VM has with all the class libraries.

llvm - низкоуровневый интерпретатор, parrot - parrot и есть (морковка)... преимуществом морк^Wparrot может являться то что оно (?) содержит "могучие" библиотеки входящие в perl и cpan....

> Both Parrot and LLVM are register based interpreters which give a nice speed improvement over stack based interpreters.

и parrot и llvm - регистровые ВМ, так что работать должны быстро

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от phasma

Re: Parrot 1.4

>я теперь смогу на jQuery писать свои приложения ?

да и сейчас наверное можешь, только зачем тебе лишний слой виртуализации для этого?

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от grim

Re: Parrot 1.4

> Это как всегда троллинг, или вы видите применение jQuery за пределами DOM браузера?

Я смотрю в будущее. Когда начнет загнивать .Net все же перейдут на JS

phasma ★☆ ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

>> на ненужность Parrot

> зря Вы так, батенька, там же есть lisp, lua и даже bf собственной персоной...

CL там недоведенный, Lua нужен только игроделам... вся надежда только на bf

> гораздо интереснее сравнить их по скорости/переносимости whatever...

Почти все языки на Parrot (кроме Perl) - огрызки. То есть о запуске реальных программ речь просто не идет.

tailgunner ★★★★★ ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

> да и сейчас наверное можешь, только зачем тебе лишний слой виртуализации для этого?

хочу байт-код компилятор со шлюхами

phasma ★☆ ()
Ответ на: Re: Parrot 1.4 от vasdi

Re: Parrot 1.4

> LOLCODE

Да, без поддержки LORCODE и виртуальная машина не виртуальная машина, да и анонимусы не одобрят.

GuttaLinux8 ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

> parrot - parrot и есть (морковка)

Сам ты... %) "parrot" - это "попугай".

> parrot и llvm - регистровые ВМ, так что работать должны быстро

"Регистровость" VM не делает ее быстрой.

tailgunner ★★★★★ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>> parrot - parrot и есть (морковка)

>Сам ты... %) "parrot" - это "попугай".

ага, это у меня фейл случился, видать отвлёкся и приглючило :)

>> parrot и llvm - регистровые ВМ, так что работать должны быстро

>"Регистровость" VM не делает ее быстрой.

зато "стековость" делает её автоматически медленнее

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>Почти все языки на Parrot (кроме Perl) - огрызки.

"Parrot будет основой интерпретатора Perl, а также будет целевой платформой для компиляции кода Perl 6."

http://ru.wikipedia.org/wiki/Parrot

оттуда ноги растут?

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от phasma

Re: Parrot 1.4

>Я смотрю в будущее. Когда начнет загнивать .Net все же перейдут на JS
Ясно. Я так и думал, что это пустой тролинг.

grim ★★★☆ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>Ну это как бы она и есть...

я в том смысле что недопиленность языков окроме perl обусловлена тем что parrot vm для perl в первую очередь...

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

хотя, с другой стороны, допилят... платформа таки всё равно интересная и доставляет...

возможно вместо сегодняшних холиваров c++ vs mono буду холисрачи на тему llvm vs parrot :) и нубы будут удивляться тому что бывают оказывается и обычные компиляторы

shty ★★★★★ ()

Re: Parrot 1.4

Лучше бы рубиниус развивали

Banana ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

> я в том смысле что недопиленность языков окроме perl обусловлена тем что parrot vm для perl в первую очередь...

Скорее тем, что долгосторой Parrot давно потерял доверие, и языки предпочитают обзаводиться своими JIT (luajit, psyco/PyPy, не говоря уже о ворохе Лиспов),

tailgunner ★★★★★ ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

>зато "стековость" делает её автоматически медленнее
Труды теоретиков это хорошо, но они писали это лет 30 назад.
А на данный момент наиболее быстрые VM это Java и .Net - обе стэковые.

grim ★★★☆ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>языки предпочитают обзаводиться своими JIT (luajit, psyco/PyPy, не говоря уже о ворохе Лиспов),
Из-за NIH синдрома.

grim ★★★☆ ()
Ответ на: Re: Parrot 1.4 от grim

Re: Parrot 1.4

> Труды теоретиков это хорошо, но они писали это лет 30 назад.

Вообще-то как раз теоретики любят стековые машины. А про то, что для стековых труднее писать JIT, коворят практики уж лет 15.

> А на данный момент наиболее быстрые VM это Java и .Net - обе стэковые.

Только вот Sun обанкротился, делая Яву быстрой :-P

tailgunner ★★★★★ ()
Ответ на: Re: Parrot 1.4 от grim

Re: Parrot 1.4

>>языки предпочитают обзаводиться своими JIT (luajit, psyco/PyPy, не говоря уже о ворохе Лиспов),

>Из-за NIH синдрома.

Бгг. Эти JIT есть и работают уже несколько лет, а Parrot еще по факту не существует.

tailgunner ★★★★★ ()
Ответ на: Re: Parrot 1.4 от grim

Re: Parrot 1.4

>>зато "стековость" делает её автоматически медленнее

>Труды теоретиков это хорошо, но они писали это лет 30 назад.

ну хорошо, а что за эти 30 лет изменилось в теории?

>А на данный момент наиболее быстрые VM это Java и .Net - обе стэковые.

пруфлинк, плиз

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>> я в том смысле что недопиленность языков окроме perl обусловлена тем что parrot vm для perl в первую очередь...

>Скорее тем, что долгосторой Parrot давно потерял доверие, и языки предпочитают обзаводиться своими JIT

т.е. теперь есть шанс что их таки допилят?

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

>пруфлинк, плиз

На то что быстрее или на то что стековые?

r ★★★★★ ()
Ответ на: Re: Parrot 1.4 от grim

Re: Parrot 1.4

> Ясно. Я так и думал, что это пустой тролинг.

а как же будущее ? новые технологии ?

phasma ★☆ ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

> т.е. теперь есть шанс что их таки допилят?

Есть только 2 динамических языка, которые имеют значение: Python и Ruby. У первого есть Unladen Swallow, PyPy, Psyco v1 и может появиться Psyco v2 - что-нибудь да "выстрелит". Рубисты только недавно осилили переход с AST-интерпретатора на VM, так что тоже не станут возиться с Parrot. В общем, Parrot станет любимой платформой маргинальных язычков... типа bf %)

tailgunner ★★★★★ ()
Ответ на: Re: Parrot 1.4 от r

Re: Parrot 1.4

>>пруфлинк, плиз

>На то что быстрее или на то что стековые?

:))) конечно имелась в виду скорость...

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>Есть только 2 динамических языка, которые имеют значение: Python и Ruby.

не согласен... из тех что широко применяются, помимо вышеупомянутых, есть c, .net, lua, lisp/scheme, tcl...

>Рубисты только недавно осилили переход с AST-интерпретатора на VM, так что тоже не станут возиться с Parrot. В общем, Parrot станет любимой платформой маргинальных язычков... типа bf %)

не думаю... есть определённый (и немаленький) профит в расшаривании библиотек между языками...

shty ★★★★★ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

Ну, я заглядывал в книги Хартманиса и Мински, они достаточно долго нудно писали о преимуществах регистровых машин. Стэковые прошли мимо меня.

grim ★★★☆ ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

>зато "стековость" делает её автоматически медленнее

4.2 Стековость её не делает ни-ка-кой. Стековая машина отлично транслирует в региструвую. Стековое выражение тривиально реверсинжинерится обратно в исходный код - с чего собственно становится медленнее, аналитик ты наш?

theos ★★★ ()

Re: Parrot 1.4

Очень хорошо, как раз к моменту стабилизации ракудо рассматриваю вариант заюзать перл6 в проекте. Но вот развитие паррота как вм независимой от перла пока что идёт очень слабо. По факту перл6 будет единственным рабочим языком на этой вм ещё очень долго, при условии что он сам не скорчится в жутких судорогах.

Хотя да, создание языков посредством грамматик удобненько, но чтобы вм была применима другими - это должно быть не только удобненько, но ещё и эффективно и безглючно, хотя бы на уровне jvm. А с этим у паррота и ракудо есть проблемы. Переодически rakudo сваливается при разборе исходника. Будем надеяться что это лиш временные неудобства.

И ещё, каждый раз в новостях про паррот пишут про мифические .net->pir javabc->pir и поддержку всех на свете языков. Круто конечно копипастить с parrot.org, но надо думать головой и проверять данные. Большая часть этих проектов на таком раннем развитии или даже в заморозке, что их упоминать даже глупо.

ixrws ★★ ()
Ответ на: Re: Parrot 1.4 от shty

Re: Parrot 1.4

shootout'а вам недостаточно?

thevery ★★★★ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>Parrot еще по факту не существует.
Parrot уже достаточно стабильна.

К сожалени кроме NQP до полностью рабочего сочтояния ничего не довели.

grim ★★★☆ ()
Ответ на: Re: Parrot 1.4 от grim

Re: Parrot 1.4

>> Parrot еще по факту не существует.

> Parrot уже достаточно стабильна.

"Достаточно" для чего? Выше по треду товарищ сказал, что есть проблемы. И как у Parrot с JIT?

tailgunner ★★★★★ ()

Re: Parrot 1.4

>книга о PIR отравлена для публикации Инкогнито!!!!!

impfp ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>Есть только 2 динамических языка, которые имеют значение: Python и Ruby.
Это для вас лично.
Эти языки в сумме востребованных вакансий в разы меньше Perl, не вспоминая Javascript.

Так что маргинальные языки это как раз Python и Ruby.

grim ★★★☆ ()
Ответ на: Re: Parrot 1.4 от tailgunner

Re: Parrot 1.4

>"Достаточно" для чего? Выше по треду товарищ сказал, что есть проблемы.
Он писал о Perl 6

>И как у Parrot с JIT?

Присутствует.
До Java в производительности пока далеко.

grim ★★★☆ ()
Ответ на: Re: Parrot 1.4 от grim

Re: Parrot 1.4

Вот это и значит, что по факту паррота ещё нет. Ну можно подкорректировать и сказать, что свои задачи паррот пока не выполняет должным образом:)

Поскольку это vm, то она должна быть не только с минимумом глюков, но ещё и быстрой. А сейчас это не так, единственное что может компенсировать небыстроту паррота - тот факт что ракудо использует его. То есть попросту нет выбора. Ну и то, что паррот достаточно интересен сам по себе, но ещё не как продукт окончательный, то есть интересны граматики, кроссязыковость - потенциал. А чтобы этот потенциал перерос во что-то большее - нужно чтобы сам паррот стал быстрым, и нужно как минимум 2а _законченных_ компилятора для него. Идеально, если это будут компиляторы перл6 и питона. И желательно, чтобы компилятор питона + паррот показывали лучшую производительность среди прочих реализаций питона. Вот тогда, можно будет говорить о том, что паррот существует. Сейчас же он интересен таким как я и вам видимо, но это очень далеко от индустрии.

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