LINUX.ORG.RU

Разработчики Perl 6: язык готов к использованию

 ,


2

6

24 декабря в официальном блоге, посвящённом новостям разработки Perl 6, появилась поздравительная запись. Разработчики поздравили всех с наступающим католическим Рождеством, и с тем, что так долго ожидаемое взросление языка, наконец, состоялось. Фактически, язык готов к использованию в рабочих проектах, и разработчики обещают больше ничего существенно не менять.

С момента выхода первой версии Perl прошло 28 лет, с момента выхода самой популярной в данное время версии Perl 5 – более 20 лет. Как шутит Ларри Уолл, создатель языка и лидер его разработки, 6-я версия, возможно, когда-нибудь и заменит 5-ю – примерно лет через 40.

Версия Perl 6 была анонсирована более 10 лет назад – на Amazon ещё можно купить книгу про этот «вскоре выходящий» язык, изданную в 2004 году. Длительность разработки можно объяснить тем, что Perl 6 – фактически, новый язык, написанный по мотивам 5-й версии. И хотя некоторые утверждают, что 6-ка отличается от 5-ки не более, чем C++ от C, всё-таки идеология в Perl 6 эволюционировала достаточно сильно для того, чтобы назвать его более современным языком.

Ларри Уолл надеется, что преподаватели в институтах смогут, наконец, используя один и тот же язык, обучать студентов разным стилям программирования – функциональному, процедурному и объектному.

Логотипом Perl 6 выбрали весёленькую бабочку. Как (полушутя) пояснил Уолл на конференции в октябре этого года, это было сделано специально для того, чтобы сделать язык привлекательным для 7-летних девочек. В качестве примера хорошей рекламы ЯП среди детей он рекомендовал посмотреть на Python.

Уолл отметил, что основное, что объединяет две версии языка – сообщество программистов-единомышленников, стремящихся к тому, чтобы языки были более-менее взаимозаменяемыми. Например, для Perl 6 существует модуль Inline::Perl5, а для Perl 5 — модуль Inline::Perl6.

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

anonymous

Проверено: splinter ()
Последнее исправление: splinter (всего исправлений: 1)

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

Но как можно использовать мертвеца?

Посмотрите фильм «Fido».

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

Просто не обращали внимания. Я сам не так давно обратил на это внимание.

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

питон говно

Плюсую. Но и надобность 6-ки в таком виде - мне сомнительна.

Чем хорош новый препарат - тем что и старый был хорош! <Dr.Haus>

vbv
()

сделать язык привлекательным для 7-летних девочек

Девочка а что ты за книжечку читаеш ? Perl 6, ответила девочка хриплым голосом и потушила бычек об колено.

nixbrain
()

Perl рулит! Python - отстой!

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

На это можно надеяться. А расчёт такой, что это будет Ява с синтаксисом перла (не путать с ембедом).

Рекомендую читать доклады, слайды и выступления людей, которые пилили/пилят шестерку. Для Ъ: они все текут от явы и ругают пятерку в том, что нельзя хакать ядро, что оно непонятное и древнее.

gh0stwizard ★★★★★
()
Последнее исправление: gh0stwizard (всего исправлений: 1)
Ответ на: комментарий от anonymous

Неверно.
Неверно.
Специально для идиотов

Ололо, интересно на основании чего такое сильное мнение?)))

ни английского языка, ни родного толком не знают

Так ты тому и пример. Раз негодуешь от этого так подучи язык. Или посмотри хотя бы викисловарь https://en.m.wiktionary.org/wiki/regular

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

Пожалуй самый полезный и содержательный комментарий в этом треде. Спасибо.

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

для 7-летних девочек

Too old.

В самый раз.

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

Вопрос изначально был о том, что сейчас популярнее, так то понятно, что оба варианта допустимы. В последнее время я существенно чаще встречал первое сокращение в вопросах на SO, во многих статьях, etc. Google Trends в данном случае вполне корректный пруф. Там же, кстати, сходу весьма интересное географическое распределение.

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

а что там нужно увидеть?

типа, что крылья похожи на негров с покрасневшими глазами?

actionless ★★★★★
()

И хотя некоторые утверждают, что 6-ка отличается от 5-ки не более, чем C++ от C

Ну если так, то это достаточно серьёзное отличие. C++ и C - два очень разных языка. Хотя многие пишут на смеси C и C++, например, используя char* для чего-то отличного от вызова legacy, и по такому «суржику» разницу можно и не увидеть...

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от anonymous

Перл мёртв.

С какого это перепугу? В качестве инструмента для написания быстрых скриптов, особенно строкодробильных - живее всех живых.

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

Он объективно мёртв. Не отрицайте очевидного, пожалуйста. Сообщество его состоит из стариков.

Есть такой рейтинг, составили вот, пополняемости репозитариев скриптовых ЯП. Python, JS, Ruby (и ещё какой-то язык из новых. Вспомнил, Go) там рулят и педалят. CPAN ползёт где-то внизу графика уже несколько лет. Ну оно и понятно — теперь это помойка из форков.

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

быстрых скриптов

нет jit, когда у сссаного lua и python есть

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

Пруфлинк на рейтинг, пожалуйста. Tiobe index показывает perl в топ десять. Однако, если говорить про эту страну, то ты прав.

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

Оно же и в манах присутствует.

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

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

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

JS каждый школьник изучит за пару недель. Его цель - сделать жизнь идиотам еще смешнее.

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

Как бы да и как бы нет. Библиотек не густо у луа.

alkash
()

Поздравляю всех разработчиков на Perl с этой новостью! И вообще всех, так или иначе причастных. Moscow.pm привет! :)

abbath ★★
()
Последнее исправление: abbath (всего исправлений: 1)
Ответ на: комментарий от anonymous

" Сообщество его состоит из стариков. "

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

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

Я достаточно давно слежу за перл6, так что вкурсе, и в целом их позицию поддерживаю. Но мне кажется они ушли в дебри немного, раздув проект слишком сильно. Он был бы однозначно хитом, если бы компилятор был очень компактным, умел компилять в нормальный машкод(как luajit), а все остальные фичи были бы пакетами. Тем более технически это было можно сделать, потому что перл6 сам во многом состоит из модулей на перл6 и промежуточном перле:)

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

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

Да, сейчас не ясно что с ним делать. Теснить жабу на её же jvm, сомнительно. Теснить жабаскрипт и питон - очень сомнительно, перл6 получился не шибко минималистичный. Получился хороший ынтерпрайзный язык. Но опять же, он не готов для продакшина в отличие от жабы.

Значит главный вопрос, а куда его применить? Вот если кто-то найдётся, кто сделает на нём что-нибудь серьёзное, тогда посмотрим. А пока это не смерть, это отсутствие сообщества.

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

А он, ЕМНИП, примерно так и работал, наподобие JIT-компилятора, только вроде как не распухал.

DeadEye ★★★★★
()
Ответ на: комментарий от shell-script

Во-первых, не регексами, а регекспами.

В Perl6 принято название регекс.

Во-вторых, не советуют такого нигде. В-третьих, регексп - калька с английского regexp, что является сокращением от Regular Expression, т.е. регулярное выражение.

Опять неправда. Читайте синопсис 6 (диздок языка Perl6):

https://raw.githubusercontent.com/perl6/specs/master/S05-regex.pod

«We now try to call them I<regex> rather than „regular expressions“ because they haven't been regular expressions for a long time, and we think the popular term „regex“ is in the process of becoming a technical term with a precise meaning of: „something you do pattern matching with, kinda like a regular expression“.»

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

Lua лучше, спасибо

Lua это отстой. Ну его в принципе не сложно эмбедить и фич поболее чем в скукоджавоскритпе, но как язык - забивание мусора в мозги.

Еще несколько лет назад я ждал перла 6 пологая, что но станет убийцей руби и прочих yet another script lang. Питон конечно не убить уже, у него ниша немного другая из-за пониженного порога вхождения, но создавать новые скрипты для души более не нужно, ибо перла 6 должно хватать всем. Со временем можно плавно перевести человечество на него, но надо еще много лет апгрейда библиотек и привыкания к языку.

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

В общем с празником посоны, дождались таки.

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

Вот если кто-то найдётся, кто сделает на нём что-нибудь серьёзное, тогда посмотрим.

Что смотреть? ЯП не изменится от этого. Берем Facebook. PHP выбрали не потому, что ЯП хороший. А потому что простой, имеет низкий порог вхождения. имеет большое сообщество и миллионы дешевых программистов.

Какой порог вхождения у шестерки? Ниже или выше? Какие требования к железу? В два-три раза меньше требователен чем PHP? А если он такой требовательный, то ну его, взять лучше Java?

ИМХО, либо опоздали, либо опередили время. Посмотрим на то, сколь он будет интересен вообще. А не ждать пока кто-то что-то запилит. Вот Яндекс выбрал Java для Кинопоиска 2.0 и облажался. И как крутился он под PHP, так и крутится :)

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

Ну, теоретически он может быть значительно быстрее перл5(но пока это не так, он же всё равно не для продакшина), дотянуться до уровня жабы. При том благодаря достаточно развитым возможностям самомодификации и грамматикам - можно даже потягаться по скорости с явой на её же jvm. Но опять же, теория:)

На практике язык стал более универсальным, в нём гораздо проще и понятнее сделано ООП, значительно упростили работу с С, стала просто сказка. Но все эти вещи относятся к языку, а не к ВМ. Фактически ничто не мешает сделать Язык без ВМ, например как лисп компиляторы.

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

Порог вхождения выше пятёрки, плюс пятёрка сразу монолит была, написал скрипт запустил. А тут всё равно чуточку нюансов внесли) В том то и дело, что его как бы сделали как конкурента С++ и жабе, а это как бы не совсем серьёзно, попробуй потягаться:)

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

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

Грамматики из коробки збс. Работал в проекте на 5, где роутинг был сделан на grammar (или что-то в это духе из CPAN). Ну и просто будет хорошо. Набросал грамматику, а оно тама само парсит.

anonymous
()

Язык хороший, только спецификация нужна. А потом по этой спецификации еще желательно написать с нуля нормальный компилятор и рантайм.

anonymous
()

А почему рождество «католическое»? По ссылке ничего про католиков нет.

sinister666 ★★
()

я проверил быстродействие вычислением числа Фибоначчи (банальная рекурсия) на разных скриптовых языках и на С

 
ruby 7sec
python2 14sec
python3 17sec
perl5 22sec
perl6 >90sec остановлен 
tcl 37sec
C 0.15sec

похоже ruby стоит учить

anonymous
()

Чё вы сразу срач начинаете? Хотя... это же ЛОР. Вы мне лучше подскажите, в Перле 6 всё так же присутствует неотключаемая обфускация кода по-дефолту?

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