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)

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

кмк перл не даёт плюсов которые оправдали бы преодоление порога вхождения.

Много что «не для новичков» - си, с++, жаба, scala, хаскель..

Но у этих языков есть некоторые киллерфичи. Перл не для новичков и киллерфич у него нет. Нет того ради чего можно сменить php или js на перл. Получаем просто те же яйца, но вид сбоку. Но при этом чтобы посмотреть на яйца сбоку, нужно откапать их в тонне мусора. Поэтому никто и не рвётся менят. Вот и всё объяснение.

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

кмк перл не даёт плюсов которые оправдали бы преодоление порога вхождения.

Кому как, а мне даёт. Эдакий швейцарский нож, которым можно и однострочники писать, и серьёзные приложения. Тут и грамматики для dsl'ей, и профилировщик, уровня которому в других скриптовых нет, возможность подключения/отключения фич с разных версий языка, расширяемость другими языками при разном уровне лени (inline, xs, extend), и соц.сеть metacpan с развитой инфраструктурой тестирования/сопровождения, и профессиональное сообщество perl-хакеров. Киллерфича для меня — прагматизм. Очень практичный язык. На его фоне, остальные скриптовые слишком игрушечны.

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

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

Но сейчас тенденция писать всё на питоне, при чем кривыми руками. Сколько имел дело со сторонними скриптами на перле, не было проблем с их работой. На питоне - постоянно.

Deleted
()

php - потому что mod_php по сравнению с perl cgi для хостеров был просто подарок

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

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

> А на чем тогда сейчас сайты то делают?

JS (хипстеры — на компилируемом в JS языке). Бэкэнды — java (и прочие JVM-языки), опять же JS, golang, реже — питоны, ещё реже (либо ближе к Восточной Европе) — пхп. Ну и .NET.

«Делают» может и на этом всём. Это подразумевает команду разработчиков и достаточно уникальный продукт. А когда запускают что-то типовое, то в большинстве случаев берут двигло... на PHP.

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

Добра тебе. Лучше и не скажешь

anonymous
()

О каком пороге вхождения речь? Не нужно знать весь Perl чтоб начать его использовать. Сначала код начинающего будет громоздким, раза в 4 больше чем нужно. Само собой громоздкий не значит ro. Если новичок писал на Си, то с Perl'ом он вообще сел и поехал. Я именно так и вкатился в этот замечательный язык. Многие люди просто не хотят развиваться. В других ЯП тебе достаточно выучить какую-то конструкцию и будешь её до смерти использовать. Я не считаю это минусом, это просто другой подход. Он широко используется в армии: «Пусть всё будет безобразно, главное чтоб однообразно»

anonymous
()

ТС - жирный тролль. Как можно сравнивать ублюдочный Перл с божественным Пайтоном? PHP к слову - не пародия на Перл, а его потомок. Такой-же уродец, унаследовавший много чего от Перла. Чего только стоят ублюдочные объявления переменных.

FilosofeM ★★
()

Да PHP постепенно тоже отойдёт. Это уже собственно говоря началось. С асинхронщиной у него до сих пор ничего хорошего например. А Питон бодрячком.

resurtm ★★★
()

Какие вещи помогли этим языкам вытеснить

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

<Shift>$i
<S>$a-<S>>b
<S>(...<S>)<S>{<CR>
   ;<+опциональный CR, всё * N операторов в блоке>
   <S>}<CR>
с питоном
i
a.b
<S>:<CR>
<CR*N>
<DEDENT, 1-2 кнопки>
Очевидно, что 3 > 1 && 7 > 3 && (8+[1..2]*N) > ([4..5]+N). Для большего количества констант и однострочных блоков у перла были доп. преимущества, но, c ростом сложности кода, доля оных уменьшилась. А пользователям лень нажимать лишние кнопки.

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

Слишком многословно, много синтаксического мусора.

package Language;

use Mojo::Base -base;

has [qw(name author)];

sub print_info {
    my $self = shift;
    printf qq{Language %s by %s\n}, $self->name, $self->author;
}

package main;

Language->new(name => 'Perl', author => 'Larry Wall')->print_info;
outtaspace ★★★
()
Ответ на: комментарий от linuhs_user

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

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

Ну вот собственно и ответ. Если б работал с проектом строк в >= 10к, то сам бы понял, как важно, когда код может читать не только интерпретатор.

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

Только если квалификация разработчика средняя или ниже среднего. Как раз поэтому перл и потонул. Если квалификация выше среднего, то есть такая какая и должна быть у программиста со стажем, то скорость будет та же, потому что без разницы на чём писать, а вот удобств будет с перл больше, то есть скорость будет выше.

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

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

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

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

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

Ну епт. ТС спрашивает про перл среди веба, а не про админские скрипты.

Адепты разных питонов и нетов просто привыкли к своему говну и забыли, что посторонний разработчик будет месяцы только вникать в их проект, не то что правки там какие-то делать

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

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

Вот, блин. А мне об этом не сказали и я сижу в интерпрайзе и поддерживаю перловые скрипты на тысячи строк кода.

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

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

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

Среднего — это какого? По работе дописываю ~400к-строчный проект на питонах, бывало и хуже.

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

Из опенсорсных примеров, с которыми приходилось возиться - emerge, django, когда-то очень давно trac.

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

Ну значит вам попадались хорошо написанные проекты. Последнее время работаю много с ынтерпрайзом на дотнете (С#, VB:)) и чуть чуть с python - никак не могу подтвердить ваши слова. Ужасно читается и напрямую зависит от того, кто писал. Если квалификация хотя бы средняя - как-то читается. А в основном - полное говно. Если вы конкретно про чтение просто кода, то у меня для вас новость - в крупном проекте это наименьшая из проблем, куда сложнее понять взаимосвязи, структуру дб и прочие вещи. И тут дотнет и python ничем не лучше perl.

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

в настоящем ынтерпрайзе проекты на любом языке как правило просто УГ.

так точно.

anonymous
()

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

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

linuhs_user: вы задали вопрос, а теперь начинаете холивар с ответившими. А смысл? Вам уже ответили. Повторю тезисно ещё раз. про python. 1. мода на всё, в т.ч. на ЯП проходит. perl - старый ЯП родом из 80хх. 2. python дал «батарейки в комплекте» 3. его автора в конце концов взял на работу гугл со всеми вытекающими последствиями 4. perl6 пишут с 2000 года, он устарел не родившись. 5. Вероятно, python повторит судьбу perl лет через 10.

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

PHP первоначально расшифровывался как Personal Home Page - простой ЯП для рисования хоумпейджей. Потом фрилансеры стали его использовать для быстрого клепания сайтов. В общем дешево и сердито. Это моё ИМХО. Сам с ним дела не имел, прочитал книжку и забросил. Так же как по перлу. С awk я сразу пересел на python и lua.

anonymous
()

Перл очень гибкий

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

И в этом нет ничего плохого.

annulen ★★★★★
()

К примеру use strict;my $name;

Ты в курсе, что это костыли? Особенно my $var

Со стороны ПХП я не вижу нормальной расширяемости, CPAN, my $var, и так далее

никогда не писал, так что теоретик

Слепой теоретик, КМК.

Какие вещи помогли этим языкам вытеснить перл?

Одна вещь называется Zend Technologies Ltd., вторая Google Inc.

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

Сколько имел дело со сторонними скриптами на перле, не было проблем с их работой. На питоне - постоянно.

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

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

ТС - жирный тролль. Как можно сравнивать ублюдочный Перл с божественным Пайтоном?

Ты толще.

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

если убрать use то столько же строк сколько и на питоне

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

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

5. Вероятно, python повторит судьбу perl лет через 10.

А javascript когда?

Завтра! Когда на нем перестанут писать. Я не веб-разработчик, поэтому не могу сказать, насколько он плох или хорош. Он сильно завязан на web и там пересекаются интересы многих корпораций. Должны произойти фундаментальные изменения, которые отодвинут всю всю текущую web-приложений на периферию. Может быть это будет IoT, или 3d телевизоры с бесплатной видоесвязью или что-то другое (армагеддон?)...

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

горе-погромист понаписал всякой лапши с кучей ифов(а питонщики это очень любят)

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

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

Чтобы что-то написать на перле приходится напрягать извилины

Это ты зря. Хватает perl-проектов которые писались не приходя в создание.

старая школа админов, еще умеющих в перл

Встречал таких. В perl они _слегка_ умеют, но не в программирование. Их поделка работала 2 минуты, после моего вмешательства и оптимизации она стала работать 2 секунды.

outtaspace ★★★
()
Последнее исправление: outtaspace (всего исправлений: 1)
Ответ на: комментарий от no-such-file

Ты ещё про MicroSoft расскажи.

мелкий, мягкий. Не благодари.

Это было замечание, к тому, что теперь придумали рекурсивный акроним PHP: Hypertext Preprocessor. Но анонимус помнит, откуда ноги растут у пхп...

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

Не любят они проектировать, чисто конкретные пацаны - редактор в зубы и шпилят эти ифы.

Ты ничо не понял - это python way.

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

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

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

kto_tama ★★★★★
()

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

system-root ★★★★★
()

Синтаксис перловки — тот еще ад! Но если сравнить с пхытоном или пыхпыхом, то еще куда ни шло.

Но все равно, ты разные вещи сравниваешь: перловка годится для обработки текстов, и только; пхытон — ХЗ, я бы на этом говне вообще ничего не писал, но некоторые засранцы делают важные вещи на нем (скажем, portage); пыхпых вообще вне веба не используется, да и в вебе используется лишь извращенцами.

А вообще, после кошерненькой сишечки все эти перлы/пхытоны/пыхпыхи кажутся лютым дерьмом. Зачем паритсья с ними, если то же самое на сишке можно сделать7

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

В говнопхытоне вообще нет типов переменных. И какая-то обдолбленная ООПщина. Не язык, а срань какая-то. А если еще и вспомнить, что блоки кода там не скобками, а отступами определяются, так вообще жесть!

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

Лол :-) Цепепе и Це уже практически в газовой камере, о чем ты говоришь :-) Лол :-) Скоро весь мир будет писать на JavaScript :-)

anonymous
()

Потому, что only-write language. Помню, когда сам заходишь в собственный код через месяцев 6 и ничерта вообще не понимаешь что это такое. Как минимум, 80 способ сделать одно и тоже в коде (причем все способы - правильные). Не было стандартов вроде PEP8. Все это в куче делало разработку в комманде ну практически невозможной.

Когда появился PHP даже при его ущербности как языка люди прям спокойно вздохнули. Потом Python добавили в LSB, потом появилась Django. Потом на закапывании сыграла история с Perl6, потому что фанбои ждали, питали надежды, что придут дяди и сделаю всем очень хорошо, но как бы все и померло.

Но вот перловые однострочники - это бессмертно. Правда за это никто не платит.

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

А вообще, вырвиглазные и выразительные средства Perl прекрасны.

fixed.

Haters gonna hate

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