Size: a a a

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

2020 June 16

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Vladimir Legkunets
Хотел поговорить об if - вам нравится его использовать?
Я пришел к выводу что if зло - по возможности стараюсь использовать cond/case.
Потому что иф имеет свойство со временем вырастать в Многоуровневого Лестничного Монстра :)
Да вообще в большинстве случаев можно без условных операторов обходиться
источник

VL

Vlad Lisovsky in Clojure — русскоговорящее сообщество
На мапках?
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Обмазаться монадами 🙈
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
Vladimir Legkunets
Хотел поговорить об if - вам нравится его использовать?
Я пришел к выводу что if зло - по возможности стараюсь использовать cond/case.
Потому что иф имеет свойство со временем вырастать в Многоуровневого Лестничного Монстра :)
источник

VL

Vladimir Legkunets in Clojure — русскоговорящее сообщество
Мне кстати очень нравится в кложе полиморфизм на функциях :)
источник

VL

Vladimir Legkunets in Clojure — русскоговорящее сообщество
А в чем преимущество этой штуки перед простым cond?
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
Vladimir Legkunets
А в чем преимущество этой штуки перед простым cond?
в том, что там можно let использовать
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
это замена better-cond, cond+ и т.п.
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
только тут любую форму можно использовать и макрос на 3 строчки, а не библиотека
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
можно with-resources использовать, например
источник

VL

Vladimir Legkunets in Clojure — русскоговорящее сообщество
Да понял, контекст без лесенки
источник

VL

Vladimir Legkunets in Clojure — русскоговорящее сообщество
Прикольно!
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
(<<-
(with-open [r (...)])
(let [...])
(if ... x)
(if ... y)
(let [z ...])
true)
источник

VL

Vladimir Legkunets in Clojure — русскоговорящее сообщество
Но мне немного не нравится что это хакает синтаксис лиспа
источник

VL

Vladimir Legkunets in Clojure — русскоговорящее сообщество
Изменяется принцип видимости внутри блока
источник

NK

Nikita Kononenko in Clojure — русскоговорящее сообщество
Vladimir Legkunets
Но мне немного не нравится что это хакает синтаксис лиспа
нельзя хакнуть то чего нет *trollface*
источник

VL

Vladimir Legkunets in Clojure — русскоговорящее сообщество
Ну почему же, у лет вполне четкий контракт :)))
источник

VL

Vladimir Legkunets in Clojure — русскоговорящее сообщество
Но шутку я понял :)
источник

MK

Mikhail Kuzmin in Clojure — русскоговорящее сообщество
Vladimir Legkunets
Ну почему же, у лет вполне четкий контракт :)))
ок, а какая разница? что :let у cond+, что (let ...) у <<-
источник

AR

Andrew Rudenko in Clojure — русскоговорящее сообщество
Vladimir Legkunets
Ну почему же, у лет вполне четкий контракт :)))
ну четкий какой?

(let [a .. b (видит a, хотя уровень тот же)]
источник