LINUX.ORG.RU

Как вообще Perl вытеснили Python, PHP?

 , ,


1

8

Я честно не понимаю, я вижу Perl5 отличным языком а Python,PHP жалкой пародией на него.(В особенности PHP)
Давайте разберем:

  • Перл очень гибкий, можно подключать «плагины» для классов к примеру
  • У него есть CPAN
  • Он довольно быстрый
  • Имеет много фишек помогающих избежать ошибок.К примеру use strict;my $name;
  • Полноценный язык, а не обрубок как PHP.
  • Раньше использовался активнее, и по идее это плюсовало его тогда.

Со стороны ПХП я не вижу нормальной расширяемости, CPAN, my $var, и так далее.
Какие вещи помогли этим языкам вытеснить перл?На PHP, Python я естественно никогда не писал, так что теоретик.



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

тот, кто умеет работать со 100500 говнокодеров

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

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

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

Смотря какое упрощение. Если взять перл, то там есть конкретная жопа - разыменование ссылок. И это сделано не для какой-то выразительности, а по историческим причинам, потому что ссылки Ларри не задизайнил вначале. Вот такую жопу можно и нужно упрощать (что и сделали похапешники, кстати). А упрощать как в го, где выкинули все концепции, не влезающие в черепушку первокурсника, это конечно зло.

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

Много чего общего, в том числе такая вещь как выразительность.

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

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

На самом деле с ссылками достаточно просто всё. Это не Си'шные указатели. Сейчас разыменовывать можно двумя способами.

Возможно у меня профессиональная аберация. Буду признателен если покажешь чего там пэхэпэшники сделали.

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

ну не сказал бы. Из MVC только Catalyst

Из MVC давно уже куда более популярен Mojolicious.

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

Это не Си'шные указатели.

Ты имеешь что-то против указателей? Что может быть проще указателей в С?

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

Буду признателен если покажешь чего там пэхэпэшники сделали

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

no-such-file ★★★★★
()
Ответ на: комментарий от KRoN73

Лично я начинал с Perl в ~1999 и на PHP ушёл в ~2000-м по банальной причине — DBI работал в 9(!) раз медленнее, чем mysql_* в PHP :)

Я как-то сравнивал производительность DBI и того, что есть в PHP 5 - последний уже сильно продувает Perl'у, потому что с 2000-го года DBI весьма сильно изменился. Собственно, сейчас DBI - один из немногих крупных пакетов для Perl'а и на perl, о производительности которых я не переживаю: работает как часы, при этом охрененно быстро. «Красивое» ООП на Perl'е - реализовано в пакетных хивах типа Moose*, и вариантов выбора на эту тему настолько безумное количество с учётом вариаций внутри самих хивов тем более, что найти две разные команды, пишущие на одном и том же стеке ООП-сахарных пакетов - весьма непросто.

DRVTiny ★★★★★
()

Объективно у Perl5 есть один крупный недостаток и множество мелких, которые привели к его девальваци.

И эти недостатки - вообще не в области монописсесуальных предпочтений погромистов, отнюдь.

Недостатки инструмента написания кода, зарабатывающего деньги - в первую очередь касаются денег.

У Perl5 это в первую очередь стагнация развития интерпретатора и как следствие - отсутствие перспектив языка. Интерпретатор Perl5 на сегодняшний день - это приложение, которое невозможно рефакторить: внутри он нереально сложен, запутан, содержит в себе груду некрасивых «хаков», которые уже не выпилить. Его нужно просто переписать под чистую, пользуясь современными методиками и выкидывая всё deprecated г*но.

На сегодняшний день perl5 - один из аутсайдеров по скорости интерпретации (PHP его обогнал только в последнем выпуске, но КАК обогнал!), а если вспомнить о том, что python и ruby, например, имеют свои LLVM-компиляторы - становится понятным, почему язык, программы на котором жрут памяти больше, а работают медленнее - мало кому сейчас нужен. Особенно на фоне тренда миграции на современные (привет, мамонтятина родом из 70-х!) компилируемые языки.

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

P.S. Причина проста: Ларри Уолл поставил на мертворожденный проект Perl 6 - и всё продул, включая и сам язык тоже, потому что Perl 6 - это не perl, это какое-то... Rakudo

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

booking.com единственный живой проект на perl. В мейл.ру и рэмблере возможно и осталось какое-то легаси, но они почему-то постоянно ищут питонистов.

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

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

Ты считаешь, что это плюс?

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

Главный недостаток - высокий порог вхождения и соответственно дефицит кодеров на нем. Плюс из-за стагнации и отсутствия perl6 большинтсво даже фанатов перл перешлю на другие, более востребованные языки.

А по perl6 я смотрел туториал и мне он понравился. Только вот он ещё тормознее perl5 и понятное дело уже не взлетит.

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

В начале нулевых кодеров на Perl было просто немеряно, едва не каждый второй. Язык при этом был в общем-то сложнее, поскольку большинства «ModernPerl»-пакетов тогда не было, а они действительно сильно упрощают жизнь.

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

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

Я не считаю, что это плюс. Но также я не понимаю, зачем вообще использовать сахарные пакеты, если штатное ООП в Perl5 «нестандартное», но весьма удобное и супер-мощное, ведь это же на его основе все эти чудо-Moose и построены. Причём, как правило, на базе bless'ед hashref'ов, а в core-варианте можно bless'ить вообще любые ссылки - что даёт, например, возможность создавать действительно закрытые от изменений извне объекты.

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

В Mail.ru и Rambler не один проект, их там сотни, если не тысячи. И есть такие малозаметные, как почта mail.ru и блоги livejournal.com, которые всё-таки на Perl'е

Кстати, давайте по-хорошему не забывать о том, что в принципе ни одно крупное интерпретируемое приложение не обходится без бинарного кода. Поэтому фактически что perl, что python - не более, чем 20% клея для 80% кода, написанного на C и C++ и работающего «за кулисами». А если учесть код самого интерпретатора, то не останется наверное и 2% интерпретируемого кода.

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

Mail.ru, Booking.com, Rambler/LiveJournal

Крупный legacy-проект может быть хоть на cobol'е пока его вообще возможно поддерживать. Новых проектов на perl практически никто не начинает.

x3al ★★★★★
()

Как уже говорили, синтаксис. Питон более читаем, на нём быстрее писать. Зачем мучится если можно не мучится? Питон и пых - более удобные инструменты. Эльфы не в счёт.

InterVi ★★★★★
()

Perl единственный язык от использования которого я получаю удовольствие. Это очень важно. Например, если стоит какая-нибудь унылая задача, я в ходе написания «поощряю» себя причесывая код. Стараюсь делать его более выразительным и лаконичным. Благодаря этому редко приходится «досиживать» до конца рабочего дня, когда не осталось задора для сложных умозаключений.

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

Как уже говорили, синтаксис. Питон более читаем, на нём быстрее писать.

TinkOff, пишут на Scala, платят овер до*** разработчикам, но, видимо, не зря, судя по результатам.

Легко ли читать Scala? Легко ли найти разработчиков?

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

Важно ли клиентам то, что на Python школьного уровня быдлокод прочитать легче? (нормальный профессиональный код непрофессионалу читать точно так же не легче, как и профессиональный код на scala, perl и чём угодно ещё). Нет! Бизнес, способный платить чуть больше, чем за еду в студенческой столовой - вообще меньше всего считает, сколько они там заплатили разработчику, 40000 в месяц или 200000. Для того же Тинкофа эта дельта - даже не капля в море. А вот качество результата - важно.

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

А откуда такая статистика? Если в том же Rambler или Mail.ru есть профессиональные разработчики на Perl - с чего бы они и не начали новый проект? А что с ними делать нужно? Уволить и нанять «свежую кровь», пишущую на Пихтоне?

DRVTiny ★★★★★
()

Синтаксис. Отчасти это же и причина, по которой змейка пых ниоткуда не вытеснит никогда.

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

Perl 6 - хороший язык, и, пожалуй, один из самых мощных по части языковых средств

У меня до сих пор лежит книжица Perl6 и Parrot лохматого 2001 что ли года. Тогда это казалось дико крутым, и верилось, что скоро можно пощупать. Но что-то они перемудрили, в общем это самое все полимеры.

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

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

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

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

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

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

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

Важно ли клиентам то, что на Python школьного уровня быдлокод прочитать легче? (нормальный профессиональный код непрофессионалу читать точно так же не легче, как и профессиональный код на scala, perl и чём угодно ещё).

Ого, я смотрю лоровцы совсем поехали. Профессиональный код, лол. Звучит как бред из разряда «Деловой русский язык» :D

А покажи-ка мне профессиональный код на Python. Мне любопытно, насколько он сложен для новичка :)

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

Много фич из шестого доступны в пятом.

Deleted
()

PHP, IMHO, взлетел благодаря изначальному грамотному позиционированию как Personal Home Page. Где ещё ты можешь написать обычный HTML-файл и в серединке так небрежно вставить кусочек вида <? ... ?>, который посчитает и вставит в твой текст, что нужно, прямо на стороне сервера. Ещё подобное было в ASP от Microsoft (которое на тот момент только на софте от Microsoft и работало). А для старта на Перле, Джаве и др. всегда надо было знать чуть больше.

Понятно, что так на PHP уже давно никто не пишет, а рулят фреймворки на фреймворках, и расшифровку Personal Home Page стыдливо заменили на другую (ЧСХ, я её так и не смог запомнить, а старую помню хорошо). Но дело сделано, язык уже взлетел.

Такие дела.

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

нормальный профессиональный код непрофессионалу читать точно так же не легче

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

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

Ты хочешь сказать - сроки сдачи проекта не важны или код на C читать одинаково легко как и на Python? Тем более что бизнес таки выбрал Python, есть над чем задуматься. Scala вообще тут никаким боком, это не скриптовый язык и в своей нише он успешен, поэтому за разработку на нём платят. Вот на плюсах результат был бы лучше, ибо это нативки же. А платят почему-то за скалу. Может не всё так шоколадно, как ты расписываешь? На чём программисты скажут писать за то и будет платить бизнес, большие дяди в этих ваших штуках не разбираются.

Python и PHP уделывают Perl по количеству библиотек. Под них есть любая нужная фиговена, под Perl - нет. Исторических аспектов не знаю, но сейчас это уже решающий фактор.

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

Зарегистрируй новый. В Интернете тысячи xmpp серверов, на многих при регистрации даже капчу разгадать не требуют. Но я не настаиваю, твоё дело

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

Под них есть любая нужная фиговена, под Perl - нет.

Inline::C?)) Бизнес выбирает кобол, за ним будущее!

linuhs_user
() автор топика
Ответ на: комментарий от Deleted

Звучит как бред из разряда «Деловой русский язык» :D

Что, стили речи еще не проходили? Ну ничо, в средних классах будет.

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

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

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

потому что в perl любую вещь можно сделать более чем 1 способом. Эта фича имеет две стороны медали. Когда читаешь чей-то perl код - он не лучше чем пыхпыховская лапша. Ну, по крайней мере среднестатистически это именно так.

PHP затащил тем, что у него гораздо ниже порог вхождения. Даже в вопросах подготовки рабочего окружения для web, perl требует больше телодвижений и действий. К сожалению, это именно так. В то время дев окружение для пыха поставить можно за пару мин.

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

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