Size: a a a

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

2021 July 07

AF

Andrey Fёdorov in Clojure — русскоговорящее сообщество
Eww
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
ну, вот это уже на грани, и на практике a и b тоже стремятся быть кучерявыми выражениями
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
не, ну в случае кучерявых выражений уже пожалуй перебор
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
а если один простой аргумент - чому б не?
источник

AF

Andrey Fёdorov in Clojure — русскоговорящее сообщество
Ага, но если мы для разных случаев использования comp вынуждены прибегать к доп. мнемонике, то возможно где-то что-то уже пошло не туда.
источник

A

Andrey in Clojure — русскоговорящее сообщество
просто трансдюсеры это двойная композиция
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
Не совсем, это функции в cps
источник

A

Andrey in Clojure — русскоговорящее сообщество
ну да
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Что это, у вас там внутренние тёрки за стиль? 😁

Лично я сейчас почти не использую ни то, ни другое, кроме comp для трансдюсеров.
Во-первых очень редко это удобно делать — тот же partial почему-то очень часто хотелось сделать со вторым аргументом.
Во-вторых читается так себе, даже когда использовал чаще.
В третьих разбирать стектрейсы потом тяжелее будет.
источник

AF

Andrey Fёdorov in Clojure — русскоговорящее сообщество
Да не, просто интересно, как люди сейчас делают и чем аргументируют, в разных местах опыт был очень разный, так что без тёрок.

Кстати, стектрейсы - интересный аргумент.
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
Если partial сложно делать – автор функции не продумал порядок аргументов функции.
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Вроде бы и так, но, к сожалению, уже очень смутно помню. Бывало вроде и такое, что из кора хочется, а не можется.
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Кажется про это ещё @strofimov1972 писал, и про именованые анонимные функции.
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
((fn xxx [] (inc nil)))
Execution error (NullPointerException) at user/eval2130$xxx (REPL:1).
Cannot invoke "Object.getClass()" because "x" is null
((fn [] (inc nil)))
Execution error (NullPointerException) at user/eval2142$fn (REPL:1).
Cannot invoke "Object.getClass()" because "x" is null
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Но да, в этом случае нужно придумывать имя.
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
В racket есть curryr
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
+
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
неправда
все мультиарные функции, заточенные под ->, неудобны для partial
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
в разных местах опыт был очень разный
значит уже должен был набрать данных для обобщений 😊
источник

AF

Andrey Fёdorov in Clojure — русскоговорящее сообщество
Ну так хочется как раз не столько обобщений, сколько аргументов, тем более, что со временем подходы меняются, какие-то практики вытесняют другие.
источник