Size: a a a

Clojure — русскоговорящее сообщество

2020 July 21

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Mikhail Kuzmin
Устройства stateful
На здоровье, стейт возвращаем с помощью функции
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
На здоровье, стейт возвращаем с помощью функции
Из чего возвращаем?)
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Mikhail Kuzmin
Из чего возвращаем?)
Из устройства, по статическому дескриптору
источник

DK

Denis Krivosheev in Clojure — русскоговорящее сообщество
Да много применений. Попробуйте без макросов, частичного применения и композиции применить несколько операций на одной структуре данных
doThis(doThat(param1, doThird(doFourth(abc))))
Это же ад... с объектами почти прилично
abc.doThis().doThat(param1).doThird().doFourth()
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Denis Krivosheev
Да много применений. Попробуйте без макросов, частичного применения и композиции применить несколько операций на одной структуре данных
doThis(doThat(param1, doThird(doFourth(abc))))
Это же ад... с объектами почти прилично
abc.doThis().doThat(param1).doThird().doFourth()
->
источник

DK

Denis Krivosheev in Clojure — русскоговорящее сообщество
Я и говорю без макросов))
источник

TP

Tim Plotnikov in Clojure — русскоговорящее сообщество
Denis Krivosheev
Да много применений. Попробуйте без макросов, частичного применения и композиции применить несколько операций на одной структуре данных
doThis(doThat(param1, doThird(doFourth(abc))))
Это же ад... с объектами почти прилично
abc.doThis().doThat(param1).doThird().doFourth()
Так будет работать только в том случае если каждый из этих методов будет возвращать объект)
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Denis Krivosheev
Я и говорю без макросов))
А зачем себя ограничивать? Это нелисперы пусть страдают
источник

DK

Denis Krivosheev in Clojure — русскоговорящее сообщество
Tim Plotnikov
Так будет работать только в том случае если каждый из этих методов будет возвращать объект)
Ну и в фп аналогично в общем то
источник

DK

Denis Krivosheev in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
А зачем себя ограничивать? Это нелисперы пусть страдают
Я просто пытался раскрыть малую долю мотивацию нелисперов
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Denis Krivosheev
Да много применений. Попробуйте без макросов, частичного применения и композиции применить несколько операций на одной структуре данных
doThis(doThat(param1, doThird(doFourth(abc))))
Это же ад... с объектами почти прилично
abc.doThis().doThat(param1).doThird().doFourth()
А теперь сделай композицию с функциями
источник

DK

Denis Krivosheev in Clojure — русскоговорящее сообщество
Довольно логично держать структуру данных и операции над нею близко... просто в ооп это значит в одном объекте, а в фп очень часто в одном модуле или нэймспэйсе
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Denis Krivosheev
Довольно логично держать структуру данных и операции над нею близко... просто в ооп это значит в одном объекте, а в фп очень часто в одном модуле или нэймспэйсе
Ты почти добрался до сути
источник

DK

Denis Krivosheev in Clojure — русскоговорящее сообщество
В расте забавный гибрид) this присутствует, но передается явно как параметр
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
ООП не нужно, если есть нормальная модульность
источник

DK

Denis Krivosheev in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
ООП не нужно, если есть нормальная модульность
Есть ещё инкапсуляция
источник

DK

Denis Krivosheev in Clojure — русскоговорящее сообщество
Спорная тема но в ооп ее любят
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Denis Krivosheev
Есть ещё инкапсуляция
Приватный def
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Можно ещё вспомнить наследование, и ООП станет не нужно совсем
источник

DK

Denis Krivosheev in Clojure — русскоговорящее сообщество
Но вообще я свой, тутейший) не топлю за ооп совсем
источник