Size: a a a

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

2021 March 10

А(

Артур (MIIIG) in Clojure — русскоговорящее сообщество
Молюсь чтобы тимлид согласился эликсир в проект затащить
источник

А(

Артур (MIIIG) in Clojure — русскоговорящее сообщество
Если смогу кложуру чуть-чуть применить, радости будет по более от работы
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
А в какой момент я выстрелю себе в ногу, если я буду исползовать
not-empty вместо seq для проверки на непустоту?
ты выстрелишь себе в голову, потому что not-empty - не предикат, так ещё и завёрнутый seq
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Vladimir Pavlyuk
ну скорей всего если вы будете использовать результат not-empty чисто для проверки условия, то хуже не будет
а вот если в дальнейшем у вас
(let [ne-coll (not-empty coll)]
(f ne-coll))

куда-то зайдет, могут быть проблемы
оно-то можно, но зачем?
источник

DL

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

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
ты выстрелишь себе в голову, потому что not-empty - не предикат, так ещё и завёрнутый seq
Всё равно не догоняю как при проверке на пустоту я тут могу получить проблемы
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
(map (juxt identity
          (comp boolean seq)
          (comp boolean not-empty))
    [nil
     {:a 1}
     {}
     "foo"
     ""
     [1 2]
     []
     '(1 2)
     '()
     #{1}
     #{}])
;=>
;([nil false false]
; [{:a 1} true true]
; [{} false false]
; ["foo" true true]
; ["" false false]
; [[1 2] true true]
; [[] false false]
; [(1 2) true true]
; [() false false]
; [#{1} true true]
; [#{} false false])
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
(map (juxt identity
          (comp boolean seq)
          (comp boolean not-empty))
    [nil
     {:a 1}
     {}
     "foo"
     ""
     [1 2]
     []
     '(1 2)
     '()
     #{1}
     #{}])
;=>
;([nil false false]
; [{:a 1} true true]
; [{} false false]
; ["foo" true true]
; ["" false false]
; [[1 2] true true]
; [[] false false]
; [(1 2) true true]
; [() false false]
; [#{1} true true]
; [#{} false false])
ты получишь проблемы на код ревью от коллег
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
ты получишь проблемы на код ревью от коллег
Дак в чем их претензия будет-та?
источник

DL

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

DL

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

DL

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

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
если бы было not-empty? - там ещё понятно, предикат, все дела
Но и seq тоже не предикат
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
Но и seq тоже не предикат
а он и не претендует
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
а он и не претендует
Ну да, понимаю, хорошо
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
в кложе проверки на пустоту не очень и приветствуются, кстати, почти всегда можно заюзать seq и if-not/when-not
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
но если empty? хотя бы предикат, то not-empty нужен чуть чаще, чем никогда
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
но если empty? хотя бы предикат, то not-empty нужен чуть чаще, чем никогда
Можно ещё так
(some-> xs not-empty ...)
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
Можно ещё так
(some-> xs not-empty ...)
и почти всегда seq-а хватит
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
и почти всегда seq-а хватит
Да не думаю. Если conj делать, исходная коллекция теряется
источник