LINUX.ORG.RU

Сегодня языку Perl исполнилось 25 лет!

 , , ларри уолл


5

2

25 лет назад, 18 декабря 1987г., программист и лингвист Ларри Уолл выпустил первую версию языка программирования Perl.

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

★★

Проверено: JB ()
Последнее исправление: JB (всего исправлений: 4)
Ответ на: комментарий от goingUp

Да в любом языке так можно. f1(f2(f3())))

но не в любом можно f1 . f2 . f3 или f3 $ f2 $ f1 или сделать свой оператор | чтобы писать конвееры в духе f3 | f2 | f1

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

Именно в силу лёгкости, очевидно, Perl и является самым популярным скриптовым языком для веб-дизайна, системных скриптов и клиентского софта. Это отлично видно по изобилию CMS, написанных на перле, торрент-клиентов, инсталляторов операционной системы и т.д.

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

А зачем для этого спец-конструкция?

что, по-твоему, более читабельно? Особенно если функций больше трех. Это редкость, но такие мелкие фишки радуют душу.

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

Предлагаете ввести нумерацию версий, как в Файрфоксе?

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

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

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

Если убрать маркеры конца блока

А если тру_админу отрезать яйцы, то уже нельзя понять, тру_админ это или тру_админша. Но зачем?

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

Если убрать маркеры конца блока то нормальному человеку уже нельзя понять что к чему относится

Ты че на глаз их сопоставляешь ?

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

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

Изначальные затраты потом окупятся. Я не защищаю перл, но я против подхода «давайте делать ЯП как можно проще». Пусть новички используют простые средства, профи продвинутые. Только вот некоторые слишком увлекаются, в этом проблема перла. А ещё код не комментируют, от этого все проблемы.

true_admin ★★★★★
()
Ответ на: комментарий от border-radius

Python- и JS-программисты (включая меня) смотрят на perl- и PHP-программистов как на эталонных ССЗБ.

Вот сейчас ты мне доказал что примитивное у тебя мышление (ты тест не прошел; если кому интересно - суть скрыта в моем ответе). Кстати, это уже далеко не первый фейл твоего мышления. Живи с этим, но, пожалуйста, держись подальше от меня.

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

Первое, знаешь ли ты что из себя представляет куча говна? Второе, если есть модуль на CPAN - значит кто-то модуль создал и загрузил его туда. Значит кому-то этот модуль был нужен. Но поскольку тебе лично этот модуль (или группа модулей) не понадобился (и не нужен здесь и сейчас) то ты называешь этот (и другие) модули кучей говна. Твое утверждение имеет силу если только рассматривать его с твоих предпочтении вкупе с плоским и линейным мышлением. Но поскольку до тебя всем вокруг плевать, то ты остаешься со своим заявлением один-на-один. Несмотря на этот фактор ты пытаешься претендовать на истинность суждения. Это одна из характерных черт быдла (точнее сказать - это одна из тех черт что делает человека быдлом).

Право, псевдоинтелектуальные троли они такие смешные :) Но если уж нато пошло, я отвечу, правда на подпункты разбивать не буду, времени нету Куча говна на CPAN - это те модули которые а) Собсно Говно ) Модули с ошибками, кучей недочетов и десятками открытых багов, которые не фиксятся годами, потому что автор уже тупо забы(и)л на этот модуль. А новый мейнтейнер не появлятся как раз по причине, ненужности этого модуля никому (уже, а может никогда и не был. То что его загрузили на CPAN значит лишь то что он нужен был автору и не более) б) Говно мамонта. В силу возраста CPAN на нем скопилось порядочно банально старых модулей. тех которые уже просто никому ненужны (потеряли актуальность, заменены на более новые и тд и тп). в) Школьное говно. Каждый день на CPAN появляется очередной SUper::Puper::AbastractDB::SQL::Parser или чтото вроде. И плох не сам факт того что такие вещи появляются, а плохо то что через месяц автор тупо забивает на этот проект, потому что неосилятор, или потому что внезапно понимает что все это уже сделано было давно в другом более крупном модуле (и лучше бы он уже примкнул его разработке, чем городил очередные велосипеды). А эти велосипеды все накапливаются и накапливаются... СОбсно на самом деле все такие проблемы характерны и для других языков имеющих аналог CPAN, просто у CPAN в силу его возраста они выражены более ярко

anonymous
()

Вот это праздник! Спасибо за замечательную новость!

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

Ибо нету лишних 5 лет, чтобы учить все его 100500 операторов.

Это вы сейчас про питон?

Ну не знаю, даже если Питон говно, то что ж тогда не говно?

Конечно ВасяPerl!

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

Я не стану объяснять свою иронию, дабы не смущать вас.

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

А зачем для этого спец-конструкция?

true_admin уже вообщето и так все ответил по этой теме, но хотелось бы все таки еще добавить что конвееры из функций высшего порядка как правило безсмысленны (или гараздо менее удобный, и потому безсмысллены) без замыканий...

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

Ты че на глаз их сопоставляешь ?

это была шутка. я как бы в 100500 раз высказываю мнение что выразительность кода определяется в первую очередь форматированием, а не скобочками. Именно поэтому каждый раз когда Ларри высмеивает питон и после этого показывает кишки перла я недоумеваю: убрать скобочки и от питона отличить будет сложно.

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

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

если вообще сталкиваешься...

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

Просто скажи: зачем тебе перл?

Люди с примитивным мышлением, знаешь ли, жрут что дают - дотнеты всякие да пыхи. А ещё бывают консерваторы и прочие люди с ограниченным мышлением, которым решение простых задач сложными методами прибавляет ЧСВ. Ещё раз повторяю - перл несложен, но зачем им пользоваться, когда уже давно есть более удобные инструменты?

border-radius
()
Ответ на: комментарий от true_admin

Изначальные затраты потом окупятся. Я не защищаю перл, но я против подхода «давайте делать ЯП как можно проще». Пусть новички используют простые средства, профи продвинутые. Только вот некоторые слишком увлекаются, в этом проблема перла. А ещё код не комментируют, от этого все проблемы.

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

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

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

В узком смысле у ЯП вообще проблем нет, потому что он не живой.

Я про другие вещи. Даже если изобретут супер-язык, но у него не будет нормальной реализации или сообщество будет писать кривые библиотеки то это 100% скажется на популярности ЯП и его применимости в реальной жизни. Поэтому я не рассматриваю ЯП в отрыве от его сообщества и доступных под него библиотек.

true_admin ★★★★★
()
Ответ на: комментарий от border-radius

Люди с примитивным мышлением, знаешь ли, жрут что дают - дотнеты всякие да пыхи. А ещё бывают консерваторы и прочие люди с ограниченным мышлением, которым решение простых задач сложными методами прибавляет ЧСВ. Ещё раз повторяю - перл несложен, но зачем им пользоваться, когда уже давно есть более удобные инструменты?

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

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

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

Это да, не спорю. Многие системные утилиты по этой причине до сих пор написаны на нём.

неплохим наобором полезных библиотек

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

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

Возможно. Но многие ли из этих многих достаточно знакомы с альтернативами?

PS. Не являюсь фанатом ни питона, ни какого-либо другого ЯП, просто считаю, что нужно подбирать инструмент под задачу, а не пытаться строить вебсервисы на языке обработки текста.

border-radius
()

Он умер таким молодым... А сколько программистских мозгов загубил...

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

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

я немного не понял, а причём тут ООП?

Инкапсуляция реализуется через «благословлённые» ссылки очень даже неплохо: мы абстрагируемся от данных объекта (в которые может разыменовываться ссылка) и действий объекта (в которые опять же разыменовывается ссылка).

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

Вот тебе и ООП.

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

да. Рисует.

В этом месте принято радоваться :)

а ещё у меня есть команда reset.

Спасибо! — Забыл про неё. Точнее, помнил, что есть такая, но название забыл.

helios ★★★★★
()
Ответ на: Расцвет позади. от Camel

Расцвет Perl'а уже позади. Уолл молодец, но кто сейчас начнёт новый проект на Perl'е?

А для проектов он и не предназначался никогда. write-only кодинг в перле не глюк а фича.

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от border-radius

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

Хм..возможно. Честно говоря никогда не ограничивал себя только стандартный библиотекой.

Возможно. Но многие ли из этих многих достаточно знакомы с альтернативами?

не стоит упускать из виду, что для многих из этих многих перл является вполне достаточным инструментом которые решает поставление перед ним задачи. тоесть говоря короче - он устраивает, а если это так, зачем чтто менять? Вот например я активно пишу на Перле, но последнее время немного присматриваюсь к руби, привлекает он меня ИМХО более стройной реализацией ООП. Но это совсем не значит что я брошусь переписывать свой проект на руби )

PS. Не являюсь фанатом ни питона, ни какого-либо другого ЯП, просто считаю, что нужно подбирать инструмент под задачу, а не пытаться строить вебсервисы на языке обработки текста.

А вот здесь я с вами категорически не соглашусь. Перл был языком обработки текста дай бог памяти году этак в 1987 ) ну может 1990 ) Начиная с версии perl 4 ( или 3 ? Вообщем когда там ссылки и тд появилось) perl стал языком широкого профиля (в отличии от того же PHP который был есть и остается языком чисто для веб). Вы же сами в начале написали что на перле пишутся разные системные и около того утилиты - а это ведь не только потому что там интепретатор быстрый. Также под перл разработано огромное кол-во разных библиотек широкого профиля ,а не только веб-фреймворков или систем обработки текста, вспомните тотже AnyEvent например, Net:: IPC:: модули, итд и тп.

anonymous
()
Ответ на: Расцвет позади. от Camel

Расцвет Perl'а уже позади. Уолл молодец, но кто сейчас начнёт новый проект на Perl'е?

Я начну. Чтобы хипсторы удавились.

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

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

Да, ещё и потому, что первые их версии были выпущены ещё в то время, когда перлу не было достойных альтернатив. По этой причине перл входит даже в минимальный дебиан. А вот много ли _новых_ системных утилит есть на перле?

border-radius
()
Ответ на: комментарий от true_admin

Именно поэтому каждый раз когда Ларри высмеивает питон и после этого показывает кишки перла

У него основной аргумент — вы, мол, смотрите, в пистоне надо функцию вызывать, а у нас в перле есть вот такая кракозяблочка.

При этом он так говорит «кракозяблочка», как будто это что-то хорошее. Это пугает.

Между тем, я, например, до сих пор не могу увидеть, как мне регулярное выражение засунуть в переменную, чтобы оно там раз на всю жизнь скомпилялось. Как мне вообще с регуляркой обращаться как с first class object. Потому что оно 98% перловиков не нужно. А те, кому нужно — сосут лапу.

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

Мне питон нравится, но если бы не эти отступы и пара других косяков...

Согласен, у Питона есть недостатки, но когда говорят, что _отступы_ — это недостатки, то это просто смешно. Вам реально не пофиг — поставить curly braces {} или отступы? Или это т.н. С-головного мозга?

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

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

У Perl-программистов грамматика perl'а зохавала моск и уже вытеснила человеческий язык, включая тебя.

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

Да, ещё и потому, что первые их версии были выпущены ещё в то время, когда перлу не было достойных альтернатив. По этой причине перл входит даже в минимальный дебиан. А вот много ли _новых_ системных утилит есть на перле?

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

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

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

Оператор qr// не ?

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

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

У них в почёте скорее руби и Objective C.

Он развивается

Вот только в какую сторону и с какой скоростью?

border-radius
()
Ответ на: комментарий от shimon

Как мне вообще с регуляркой обращаться как с first class object

Мне хватает my $regex = qr{}; say 'tratata' if $var =~ $regex;

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

В руби. :)
Не флейма ради...вообще давно хочу на него внимательней >посмотреть (правда немного пугает его слава «тормоза»), можно >ли в нем делать «pipe"ы из функций типа там grep map sort >split ? В перле это мегаудобно...

в руби можно как-то так :

func1().func2().func3()

к результату предыдущей функции применяется следующая функция ...

ежели это функции-методы

А по скорости - руби в версии 1.9 уже догнал перл, питону пока уступает

AlexLorovitch
()
Ответ на: комментарий от border-radius

У них в почёте скорее руби и Objective C.

Ну я смотрел чисто в контексте скриптовых языков

Вот только в какую сторону и с какой скоростью?

С очень приличной я хочу сказать скорость. Новые версии 5ой ветки релизятся каждый год (эээ или два? часто вообщем). Понятно что суперкардинального там ничего не происходит - но ведь это ЯП а не плеер ) Новый стандарт С++ вон сколько лет ждали... Что касается в какую сторону - ждем интеграции MOP в ядро, улучшается работа регекспов с UTF8, state переменные, удобный сахар в виде оператора //, given/when, __SUB__,smart matching, use features etc etc Вообщем можете посмотреть презентации на слайдшаре )

anonymous
()

Согласен, у Питона есть недостатки, но когда говорят, что _отступы_ — это недостатки, то это просто смешно. Вам реально не пофиг — поставить curly braces {} или отступы? Или это т.н. С-головного мозга?

Ж:)))

В сотый раз про это.... Нет. Не буду.

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

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

ога, ога, один фюрер, одна страна... где-то я это уже слышал...
На перле не пишу, но знающих его людей - уважаю.

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

Вообще, такое впечатление, что PHP придумали люди, напуганные Перлом)

исторический фикс

И правдивый.

border-radius
()

Я на Перле писал аж с 1994 года. После суходрочки на Си, Перл казался совершенством! Фактически, он и сейчас совершенство, оставляющее по краям мэйнстрима неосиляторов-пистонорубистов. Стабильности языка можно только позавидовать, а его ООП возможности обгоняют даже C#, сближаясь скорее со смоллтоком, чем с коСтылями++. «Обработка текста» - самое малое, что можно на нём позволить - Перл практически универсальный язык, да ещё включающий интерфейс к нативным библиотекам. Так что если кто-то устал мудазвонить на похапэ, мозги в охапку и учим Перл! Последний шанс посредственностей стать профессиональными веб-программистами.

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