LINUX.ORG.RU

Parrot, или Почему мы долго ожидаем Perl 6


0

0

"Как известно, впервые Perl был представлен на суд общественности Ларри Уоллом (Larry Wall) еще в конце 1987 г. В последующие несколько лет язык бурно развивался, одна за другой выходили новые версии, и уже в 1994 г. программисты работали с Perl 5. Однако с тех пор прошло тринадцать лет, и хотя за это время появлялись очередные релизы, номер текущей версии по-прежнему начинается с пятерки. Значит ли это, что Perl идеален? Спору нет, он очень хорош, но и предела совершенствованию, как известно, нет. А одна из причин задержки шестой версии состоит в том, что в ней ожидается поистине революционное новшество - переход на новую систему промежуточного представления кода."

>>> Статья на itc.ua



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

честно говоря уже просто неинтересно смотреть что там и как с этим перлом шестым.. он если и не мертв, то оччень сильно опоздал.

dmiceman ★★★★★
()

Ревизия перла поздала лет так на пять-шесть. Как это не прискорбно, но будущего у него уже нет.

anonymous
()

>Значит ли это, что Perl идеален?

Для своих целей он практически идеален.

perl 6 лучше бы обозвали другим названием ибо оно суть другой скриптовый язык.

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

Что значит опоздала ревизия???

Оно ж решает свои задачи? не? или хочется в один ряд поставить все? от с до вижуал бейсика и мерять письки?

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

Perl5 был и остаётся самым 'гибким' ЯП. На его кастрированной версии (рнр) написана большая часть веба. Всем кро предвещает перлокапец просьба прочитать хоть что-нить помимо камментов ананимусов о Perl6, и, если у вас хватит мозгов, то вы перестанете отрицать его достоинства по сравнению с другими модными сейчас ЯП.

kranky ★★★★★
()

>Ведь мастерство программиста – это не столько владение синтаксисом (изучить его несложно), сколько знание библиотек.

anonymous
()

препод в универе рассказывал. в 5ке много кода автогенератором из сишных библиотек наделано, а 6ку решили чуть ли не с 0ля переписать. отсюда и задержка - в генеренном коде черт ногу сломит.

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

> perl ... - это не столько владение синтаксисом (изучить его
> несложно), сколько знание библиотек.

как раз с перлом то тут и неверно, после года работы начинаешь понимать его специальные переменные, которые кардинально меняют программу. Имхо, сила перла во всяких фишках и пр. мелочах. Ну и конешно CPAN...

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

Бред. На хера "знать" библиотеки? Достаточно знать, где кнопка "поиск" у документации.

Что программисту реально надо знать, так это алгоритмы, дискретную математику. А библиотеки знать не надо, как и синтаксисы всякие хреновы.

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

Perl никогда не был "самым гибким". Потому как в нём никогда не было нормального метапрограммирования.

anonymous
()

> По крайней мере, перевод на Parrot таких языков, как Perl, Python и Ruby – дело в принципе решенное.

WTF??

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

> а 6ку решили чуть ли не с 0ля переписать.

Не "чуть ли", а с нуля. Совсем.

Основная проблема perl6 - committee design. В результате - в языке есть _все_. Автопараллелизм, замыкания, continuations, алгебраическая система типов, опциональная статическая типизация с type inference, исключения, что угодно. Причем спецификация до сих пор не утряслась - между всем этим барахлом постоянно возникают странные непредсказанные взаимодействия.

Поэтому работающей реализации до сих пор нет, и вряд ли оно появится в ближайший год.

Короче, полный бесперспективняк, увы.

А Perl5 практически не развивается (у него даже вторая цифра версии не менялась несколько лет, 5.8 вышел что-то типа в 2004-ом) по двум причинам:

- мало кто понимает код

- при этом откровенных багов в нем реально почти нет, вылизали за 10 лет. А те, что остались - описаны в манах и объявлены фичами ;-)

- добавить что-то в язык, не сломав гигабайты существующего кода сложно (парсер перла очень, очень, очень запутанный), и непонятно, что - все уже привыкли, и всем всего хватает. - язык достаточно гибок, и многое делается метапрограммированием. Особенно с появлением аннотаций, B::Deparse и source filters. Поэтому незачем менять язык в целом, чтобы добавить любимую фичу, будь то continuations или исключения или статическая типизация или метаобъектный протокол.

anonymous
()

Статью я так понимаю никто и не читал, а там тем вренемем написано, что перевод Ruby и Python на виртуальную машину Parrot - дело в принципе решенное. Это действительно так?

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

> По сравнению с питоном и руби у пёрла есть лишь единственный бенефит нынче - сипан.

Причем, питон скоро догонит.

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

> По сравнению с питоном и руби у пёрла есть лишь единственный бенефит нынче - сипан.

А что, в Ruby уже есть нормальная поддержка Unicode? Ну и тормозной он.

А питон многих отпугивает бесскобочным синтаксисом (в т.ч. меня). Whitespace 2.4, млин.

anonymous
()

Сейчас существует реализация perl6. Но она написна на хаскеле, соответственно жрёт много памяти. Не спорю, если бы писали не на хаскеле, то добиться такой гибкости стоило бы титанических усилий. Но в силу мощности хаскеля это делается элементарно. Правда, есть ещё один затык: основной девелопер реализации - транс. А ежели у человека в голове всякий бред - то и от реализации не стоит ничего ждать дельного.

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

> Статью я так понимаю никто и не читал, а там тем вренемем написано, что перевод Ruby и Python на виртуальную машину Parrot - дело в принципе решенное. Это действительно так?

Нет, это не так. Обычный бред буйного сумасшедшего. Руби переходит на YARV, у питона в перспективе - PYPY. А перл уже все давненько похоронили и помочились на его могилу.

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

> Статью я так понимаю никто и не читал, а там тем вренемем написано, что перевод Ruby и Python на виртуальную машину Parrot - дело в принципе решенное. Это действительно так?

Статью не читал, но насколько я знаю (а я читал perl6-devel и perl6-language и parrot-devel довольно долго), это не так.

То, что существуют в более-менее работающем виде реализации Python и Ruby (и Scheme, и Lua, и еще кучи языков) поверх Parrot - правда. Объявит ли кто-то такую реализацию кошерной и основной - вопрос отдельный.

Никто же не заявляет, что "перевод Python на JVM (или CLR) - дело практически решенное". Хотя и Jython, и IronPython вполне себе существуют и работают.

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

>А питон многих отпугивает бесскобочным синтаксисом (в т.ч. меня).

Пугаться... А пользоваться не пробовал?

elio
()

Довольно малоинформативная статья о Parrot и Perl 6, но как небольшое введение в Parrot сойдёт.

Жаль будет переписывать все проекты с Perl 5, такой прекрасный язык, но 6-ая версия, конечно же ещё прекрасней. :) Надеюсь, майдут практическое решение, чтобы оставить библиотеки на Perl 5 (скомпилировав их на ходу в Parrot) и лишь сами скрипты и некоторые модули переписать на Perl 6. Так будет легче постепенно переводить большие проекты на Perl 6.

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

потом привыкаешь и косо смотришь на другие синтаксесы

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

> Сейчас существует реализация perl6. Но она написна на хаскеле, соответственно жрёт много памяти.

Память еще ладно, но вот куда хуже то, что оно по 10 секунд загружает Prelude. По этой же причине, кстати, оно и компилится по 4 часа. Никто не знает как эту проблему решить?

Пытался, как вариант, использовать Pugs для "перевода" Perl6 в Haskell, чтобы потом откомпилить GHC, но оно выплюнуло нерабочий код, в котором черт ногу сломит...

anonymous
()

Здесь я пишу что-то тонко остроумное в духе "перл ацтой, питон рулез". Придумайте плз фразу сами, а то уборщица пришла полы мыть, выгоняет из-за стола.

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

зачем переводить проэкты на перл6? они от этого лучше работать будут? имхо уже новые писать нужно на шестерке если нужна именно шестерка и ее фичи

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

> >А питон многих отпугивает бесскобочным синтаксисом (в т.ч. меня).

> Пугаться... А пользоваться не пробовал?

Я слишком хорошо знаю Perl, чтобы Python мог предложить мне что-либо интересное.

При этом мне пришлось бы изучать другие библиотеки, менять приемы использования редактора (я очень много прыгаю по скобкам), отказаться от написания one-liners (perl -ne 'do-smth' < rawdata > report), и вообще усложнить себе жизнь с непонятной отдачей. Нафига козе баян?

Но сейчас, если бы я знал только C/Java, и искал бы скриптовый язык - я бы, наверное, все же выбрал питон, да.

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

> Придумайте плз фразу сами ...

(OT) Предлагаю фразу "disregard that, I suck cocks".

anonymous
()

зачем нужен perl, когда есть python и php? есть мнение, что это виртуальная машина перла, убьет сам перл, и все будут её юзать из других языков

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

> Что "транс"? Транссексуал что ли?

Он^WОна^WОно самое

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

>Perl5 был и остаётся самым 'гибким' ЯП. На его кастрированной версии (рнр) ...

Хотел было возмутиться по первому утверждению, но второе утверждение показало, что это бессмысленно :D

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

>отказаться от написания one-liners (perl -ne 'do-smth' < rawdata > report)

Вот и осталась у Перла только ниша bash-экстеншна :)

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

> Надеюсь, майдут практическое решение, чтобы оставить библиотеки на Perl 5 (скомпилировав их на ходу в Parrot)

Как я понял там есть возможность пускать perl-5 скрипты, так что это будет.

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

> Хотел было возмутиться по первому утверждению

Ну-ка, и чего же в Perl5 не хватает, что он не гибкий вдруг стал? Очень интересно.

А самые первые версии PHP, говорят, были написаны на Perl. Впрочем, лично не проверял.

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

> It attracts people who are also

Да-да, сам себя не похвалишь - день прожит зря.

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

> Perl is quirky, fun, and creative. It attracts people who are also quirky, fun, and creative

Что лучше - цельный гандон или порванный? Конечно порванный, он гораздо прикольнее.

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

Самый гибкий lisp, и не надо тут распинаться.

В perl хорошие регепсы, да, знаю, сам cl-ppcre использую и люблю :)

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

> Самый гибкий lisp, и не надо тут распинаться.

ИМХО, у TCL при той же гибкости DSL-и можно клепать на порядок круче(тоесть без скобок :))) ).

По сабжу, если его сделают, 6-ка зарулит. У меня есть знакомые хорошие перлисты и они ждут и верят. Думаю когда-то это случится. А если половина куммьюнити Перла переползет на новую версию, то программистов на нем будет больше чем на Питоне :))) http://www.tiobe.com/tpci.htm

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

> А питон многих отпугивает бесскобочным синтаксисом (в т.ч. меня)

Бэк ту ФОРТРАН :) Мудак он, этот бесскобочный изобретатель...

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

>А перл уже все давненько похоронили и помочились на его могилу.

Афтар, ты вообще когда-нибудь смотрел зависимости пакетов??

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

Ну, меня он не отпугивает, я не из пугливых. Просто никогда бы не стал бы таким негибким синтаксом пользоваться, когда есть более наглядные. Ну это как если бы для понимания, что делает кнопки диалога, нужно было бы подсчитывать на глаз длину пробела левее кнопки в пикселях. Нет уж, я лучше просто подпишу кнопку "ОК" или "Cancel". Кому-то может нравится считать пробелы на глаз, но мои программы от количества невидимых символов зависеть не будут. И ничего с структурированием кода это насильническое заставление использовать значимые пробелы в синтаксисе не имеет. Мой код более структурированым будет, чем у питонистов, да только всегда есть случаи, когда пробельные символы надо убрать, и не только в "perl -e 'some code'".

P.S. Обязательно обсуждать питон в каждом топике про Perl?

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

> да только всегда есть случаи, когда пробельные символы надо убрать, и не только в "perl -e 'some code'".

Пока что науке известны два таких случая, это автогенерация кода, и указанный выше однострочник. А что еще?

> P.S. Обязательно обсуждать питон в каждом топике про Perl?

А то.

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

> Ругать перл могут только быдлопитонкодеры, которые ничего, кроме червей с глазами не видели.

Я перл увидел первым из человеческих языков, лет наверное за 10 до питона. Но почему-то он меня не захватил совершенно, хотя быдлоперлить я вполне быдлоперлил. ?

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

> Имхо, сила перла во всяких фишках и пр. мелочах. Ну и конешно CPAN...

А вот скажите мне, умные люди... Я вот уже несколько лет наблюдаю в поцессе работы оный CPAN и создается у меня такое впечатление, что там ничего не происходит... Последние обновления нужных мне модулей -- трех-четырех летней давности... В ReportBugs висят баги и патчи, а новых версий не появляется... А например в RTF::Parser почему-то куда-то протаптались предидущие версии, а текущая вдруг почему-то помечена как ** UNAUTHORIZED RELEASE **

Чем и как вообще живет нынче CPAN и каковы процессы в нем происходящие?

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