kouzdra (kouzdra) wrote,
kouzdra
kouzdra

Categories:

Функционально-программерское

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

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

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

А в очень простом: он придуман в 1960 году - тогда на чем программировали - на фортране/алголе/ассемблере (а то и в кодах). Неглупые люди писали книжки под названием "обработка списков", где объясняли как нарисовать ручное управление кучей etc. Ну а строковая обработка на фортране-алголе - это [играет похоронная музыка].

Какая-то языковая поддержка работы с указателями и динамическими структурами данных начнет появляться в конце 60-х. О сборке мусора будет много разговоров - но мало реального результата.

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

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

С тех пор лисп-сообщество являет пример унылого фэнклуба давно дохлой рок-группы.... И рассуждает о true-лисповом ламповом звуке.
Tags: Функциональное программирование
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 16 comments