Про функциональное программирование

Feb 16, 2016 12:40

Про функциональное программирование для нечайников (хороший термин получился! :-))

http://lex-kravetski.livejournal.com/540744.html

prog

Leave a comment

Comments 5

bust_sskumk February 16 2016, 10:06:51 UTC
Ну так себе статья. Сначала предполагается "монада = контейнер". Потом это уже как-то и не предполагается, а железобетонно рассматривается. А после этого - "ой-ой-ой, можно было и не понтоваться умными словами!"

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

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

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

Reply

fdo_eq February 16 2016, 11:08:23 UTC
"абстракция, с помощью которой можно нечистые операции ввода-вывода уложить в чистый функциональный язык" - вот тут, наверное, главная разница в подходах. А зачем что-то куда-то укладывать? Суть - в расхождении целей, в этом главном вопросе: зачем? Чего хотим? Чего ради вообще это функциональное программирование? Варианты ответов ( ... )

Reply

bust_sskumk February 16 2016, 11:25:00 UTC
А мне кажется, что автор стоит на позиции "Ассемблер и монады: на хрена козе баян?". В такой постановке вопроса действительно не за чем. Монады - инструменты, сфера разумной применимости которых вполне определена. А ведется обсуждение одного лишь из аспектов их применимости, да и то в том языке, в котором этот инструмент, в общем-то, не нужен ( ... )

Reply

fdo_eq February 16 2016, 12:04:29 UTC
Автор не осознал. Более того, он не осознал, а зачем ему это осознавать! Именно об этом и статья. Спорить с этой позицией можно - но ты почему-то этого не делаешь. Он не критикует монады, он критикует тех, кто тратит время на "осознание" этой концепции и заставляет тратить на это "осознание" время других. Ну то есть да, именно тебя. Ну так ответь ему. Объясни ему, какие плюсы ты получаешь от этого осознания, а то вот он считает, что единственный твой плюс - в осознании своей "крутизны". Объясни, как на самом деле - это и будет ответ. А пока ты только иллюстрируешь его слова собственным примером, при этом называя его подход критиканством. Не логично.

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

Reply


Leave a comment

Up