Size: a a a

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

2021 January 08

AK

Azamat Kalimoulline in Clojure — русскоговорящее сообщество
Да
источник

AK

Azamat Kalimoulline in Clojure — русскоговорящее сообщество
Её и не должно быть.
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
тогда почему “наркоманские” ?
источник

ap

andei papkov in Clojure — русскоговорящее сообщество
(defmethod greeting "English" [params] "Hello!"), Вот такие примеры везде вижу, где параметры и тело функции идут отдельно
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
(defn greeting [params] “Hello!”) а такое глаз не режет?
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
andei papkov
(defmethod greeting "English" [params] "Hello!"), Вот такие примеры везде вижу, где параметры и тело функции идут отдельно
где тут «параметры и тело функции отдельно»?
источник

ap

andei papkov in Clojure — русскоговорящее сообщество
Разве функция не так описывается: (fn [params]"hello")
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
анонимная - да, но только при чем тут это?
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
andei papkov
Разве функция не так описывается: (fn [params]"hello")
вот так (fn greeting [params] "hello") 😊
источник

ap

andei papkov in Clojure — русскоговорящее сообщество
Пока все равно не понятно, почему параметры и тело как бы отдельно, например если написать (defn my [child-fn] (child-fn)), то получается код (my [_] "hello") это тоже самое что и (my (fn [_] "hello"))
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
andei papkov
Пока все равно не понятно, почему параметры и тело как бы отдельно, например если написать (defn my [child-fn] (child-fn)), то получается код (my [_] "hello") это тоже самое что и (my (fn [_] "hello"))
ты бы попробовал выполнить код, который ты тут пишешь
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
почему у тебя [] “hello” внезапно превращаяется в (fn [] “hello”) ?

defmethod всего лишь еще один вариант обьявления функции
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
и синтаксисом он очень близок к defn
источник

ap

andei papkov in Clojure — русскоговорящее сообщество
Да пишу с мобилки, обязательно посмотрю дома
источник

ND

Nikita Domnickij in Clojure — русскоговорящее сообщество
andei papkov
Пока все равно не понятно, почему параметры и тело как бы отдельно, например если написать (defn my [child-fn] (child-fn)), то получается код (my [_] "hello") это тоже самое что и (my (fn [_] "hello"))
(macroexpand '(defn f [x] x))
=> (def f (clojure.core/fn ([x] x)))
источник

ap

andei papkov in Clojure — русскоговорящее сообщество
Все началось с того что у меня есть объявленная функция и я ее захотел в defmethod передать, нo спеки заругались на (defmethod service :tag my-custom-function)
источник

ap

andei papkov in Clojure — русскоговорящее сообщество
Kirill Chernyshov
почему у тебя [] “hello” внезапно превращаяется в (fn [] “hello”) ?

defmethod всего лишь еще один вариант обьявления функции
Наверное в этом и есть причина почему так сделали, чтобы она была похожа на синтаксис объявления обычной функции
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
andei papkov
Все началось с того что у меня есть объявленная функция и я ее захотел в defmethod передать, нo спеки заругались на (defmethod service :tag my-custom-function)
(.addMethod service :tag my-custom-function)
источник

ap

andei papkov in Clojure — русскоговорящее сообщество
О спс!
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
источник