21 ноября 2010 · Комментарий

Без заголовка

>Отлаживаемость языка, конечно, задается его конструкцией, но она отнюдь не только типизацией определяется. Я повторю мой тезис: проще семантика ≡ проще типы. Чем проще семантика, тем проще рассуждать о программе. Чем проще рассуждать о программе, тем проще программировать. Чем проще программировать, тем больше программистов. Чем проще типы, тем больше программистов. >Пролог и пайтон имеют разное распространение, а выигрыш хаскела у питона определяется отнюдь не тем, что там монады и фуджеты (по вашей теории -- тем, что там унификация на операцию больше). Судя по всему, вы имели в виду сравнение Пролога и Хаскеля. И операция унификации Хаскеля (сравнение с образцом) имеет вполне определённое направление, в отличии от двунаправленной унификации Пролога. Выигрыш Хаскеля у Пролога определяется только и исключительно простотой ядра Хаскеля по отношению к Прологу. Которая позволила сделать IO и Fudgets. >Но для императивных языков я всё равно не понял -- при их трех операциях в алгоритме унификации у них не должно было быть шанса. Не в алгоритме унификации, а в семантике. С точки зрения человека, ЛИ описывает человека с карандашом и бумагой. МТ - карандаш, бумага, ластик. >Лисп должен был давно мутировать и всех вынести. Но пока что этого не происходит. Лисп прагматичен и удерживается в нынешнем состоянии длительное время количеством наработок, как Фортран. Тем не менее, есть Схема - как раз мутация. Результат труда полутора человек, используется много, где. >Даже хаскел в больших задачах в целом маргинален по сегодняшним меркам. Те, кто серьёзно этим занимаются - большими задачами, - те про Хаскель знают и используют. Просто большинство считает, что это "ракетная хирургия" и обычным людям не нужно. Вот и маргинальность. >Такие дикие выплески, как временный успех Perl, или даже C, она не объясняет... Если уж приплетать религиозность в нашу дискуссию, то у иудеев есть способы толкования Торы применительно к ситуации. Итак, Perl. Протокол WWW был сделан текстовым, что позволяло работать с ним обычному человеку. Распространение WWW привело к взрыву количества серверных программ. Однако у обычных ЯП работа с текстом никакая из-за работы с памятью, и наилучший вариант работы с текстом был у Perl - как анализ заголовков WWW для CGI, так и анализ отчётов серверов. Простота семантики работы с текстом. Тем не менее, его тут же вынес PHP, который работу с WWW выполнял ещё лучше. И тикль прорвался на эту сцену: AOLserver. А вот попробуйте на Перле сделать DSeL - мало не покажется. DSeL делают на Лиспах и прочих Хаскелях (а ранее делали на Форте). Популярность C. Во-первых, простота семантики. Во-вторых, часто кроме компилятора C на машине ничего не было - Фортран платный, Ада платная, Паскаль работает с P-машиной и медленный... В любом случае, простота семантики определённых операций чрезвычайно важна.

К записи · К обсуждению