emdrone (emdrone) wrote,
emdrone
emdrone

Categories:

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

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

Нет повода не выпить:

99 bottles on the wall
http://codegolf.stackexchange.com/questions/2/99-bottles-of-beer
         $a=
        "cpuu
       \bmft p
       \bg cff
       \bs";$b
       ="po ui
       \bf xbm
      \bm";$c="
      Ypv ublf p
     \bof epxo qb
   \btt ju bspvoe";
  $a =~ s/\n//;$a =~
  s/\s+/ /g; $b   =~
  s/\n// ;  $b    =~
  s/\s+/ /g;$c    =~
  s/\n// ;  $c    =~
  s/\s+/ /g;$a    =~
  y/b-z/a-z/;$b   =~
  tr/b-z/a-z/;$c  =~
  tr/b-z/a-z/ ; for(
  $d=100;$d>0;$d--){
  print"$d $a $b $d"
  ;print" $a,\n$c, "
  ;print($d-1);print
  " $a $b.\n";} $x =
  "cjc"; $y="dobbz";
  $z="com";print"\n"
  ;print "- $x\@$y."
   ;print"$z \n\n";


Но переписав эту радостную строчку из сообщения "linuxorgru" и ру_перл в ЖЖ, я подумал, что можно добавить что-нибудь про юбиляра и от себя.
Думаю, что в качестве подарка к такому юбилею все программисты в России должны начать называть его правильно, пЁЁЁрлом, но этого мало.


Я познакомился с юбиляром года около 1995, чуть позже чем перешел на Юникс. Верблюд тогда был значительно тоньше, красным а не синим, и даже не помню, появилась ли на свет Лама.
Язык мне понравился: в нем была некая логика, и главное он позволял делать в одну строчку то, что на Си пришлось бы делать несколькими страницами.
С тех пор я с ним дружу.

Ларри Уолл, конечно, большой звиздобол, и более лопотливых книжек, чем третий Верблюд я наверно не встречал. Но все же - по делу.
Язык - писавшийся как "набор макро для обработки текста" - почти полностью следует знакомой логике Си. Собственно это и есть громоздкий Си сверху донизу, на которой по мере роста прикручивалось все больше и больше и больше, так что модель уже стала равной по величине моделируемому.

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

ИДЕАЛЬНЫЙ СКРИПТОВЫЙ ЯЗЫК должен:
    -- весить килобайт 300, ну до 500, быть одним executable file и не требовать "системной установки". Взял эту программу, скопировал себе в ПУТЬ, и живи беззаботно.

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

    -- Иметь все сетевые функции, умение работать со строками, списками, обязательно - associative arrays на основе каких-нибудь hashes или red-black trees

    -- о-бя-за-тель-но быть "мультипарадигменным", позволяя писать процедурно, объектно-ориентированно, функционально - ибо обрубать программисту ноги, когда они не помещаются на объектно-ориентированную например, кушетку, нехорошо. Нельзя делать языки под одну жесткую схему программирования.

    ну и так далее


Такой язык, к счастью, есть, он называется "newlisp" - www.newlisp.org
300к, одна программка, компилируется на всех платформах, поразительно сильна. Хотя не так удобна для однострочников как Пёрл, верно.

НО ВЕРНЕМСЯ К ПЁРЛУ. Его польза неизмерима, его надо преподавать (даже) филологам на "лингвистических" отделениях университетов. Недавно я сам, просмотрев записи каких-то там лекций которые какие-то там московские лингвисты читали студентам и публике был поражен уровнем невежества этих людей (лекторов). Они например сейчас занялись "корпусами", т.е. компьютерными размеченными хранилками образцов применения языка, из которых затем компьютерно можно извлекать интереснейшую и очень практически полезную информацию.
Однако способны лишь вбивать запросы в интерфейс, намалёванный для них программистами, и не могут работать с непосредственно "сырыми" данными (!!)

Один из лекторов 2 часа объяснял, как он делает поиск по интерфейсу яндекс-блогов, чтобы выяснить употребления слов. Он был дико ограничен и выдумывал трюки чтобы вытащить из неприспособленного к тому интерфейса нужные ему детали.
Он не понимал, что:
(а) данные можно crawl, какэтопорюсски, брать себе данные на компьютер без спроса, набирая автоматически авторитетную и репрезентативную базу, не завися при том от того, даст ли работник яндекса ему доступ к архивам или пожелает ли продать за большие деньги, которых у него нет
(б) он искренне неодумевал (в ответ на вопрос из зала) - а что я с ними делать буду - потому что ОН НЕ ЗНАЛ ПЁРЛА, и не догадывался, что он будет писать элементарные скрипты, которые сделают такую работу в таком объёме данных, что - по сравнению с прочей лингвистической шушерой поколения каменного века, до сих пор вспоминающей как они составили словарь словоформ русского языка "из 25 хлебных лотков" забитых карточками - станет сразу академиком как минимум

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

И НАКОНЕЦ Пёрл важен тем, что он - ЧАСТЬ МИРА ОТКРЫТОГО ПРОГРАММИРОВАНИЯ. Это явление гораздо шире, чем программирование per ce.

Это - явление уникального рождения и выживания в мире системного паразитизма иной, анти-паразитической культуры создания людьми идей и технологий на плечах друг у друга.
Понятно, что из-за этого корпорации (а) ненавидят но одновременно (б) стараются спаразитировать на достижениях этого мира. (Так, на днях РМС (RMS, Richard Stallman) справедливо призвал бойкотировать Убунту, в которую её хозяева-кураторы подсунули шпионские программы. Да, ненавидят - и одновременно стараются присосаться к).

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

  • Современнае Абразаванийе

    .. или что такое cancel culture В связи с нынешними событиями по отключениям президентов - и первой волной ukaze Байдена, а также недавними…

  • Короткое замечание о главном

    В ленте увидел ссылку на пост против вчерашних демонстраций детей. Автор выдаёт кучу вопросов, дескать, а понимаете ли вы, что вы это делаете во…

  • Новые Люди и Война Полов

    Американский сайт, answers.yahoo.com (т.е. ответы на вопросы) Текст и перевод (не буду снимок экрана сюда вставлять, просто перенабираю текст):…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 57 comments

  • Современнае Абразаванийе

    .. или что такое cancel culture В связи с нынешними событиями по отключениям президентов - и первой волной ukaze Байдена, а также недавними…

  • Короткое замечание о главном

    В ленте увидел ссылку на пост против вчерашних демонстраций детей. Автор выдаёт кучу вопросов, дескать, а понимаете ли вы, что вы это делаете во…

  • Новые Люди и Война Полов

    Американский сайт, answers.yahoo.com (т.е. ответы на вопросы) Текст и перевод (не буду снимок экрана сюда вставлять, просто перенабираю текст):…