This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-06-10
Channels
- # aleph (1)
- # beginners (39)
- # boot (14)
- # cider (2)
- # clara (6)
- # cljs-dev (39)
- # cljsrn (2)
- # clojure (276)
- # clojure-italy (1)
- # clojure-russia (22)
- # clojure-sg (2)
- # clojure-spec (7)
- # clojure-uk (9)
- # clojurescript (47)
- # core-async (1)
- # cursive (5)
- # emacs (1)
- # events (3)
- # leiningen (1)
- # luminus (2)
- # lumo (75)
- # om (14)
- # onyx (1)
- # parinfer (11)
- # pedestal (1)
- # ring-swagger (2)
- # spacemacs (4)
- # untangled (5)
- # yada (29)
Вопрос глупый, но решения я что-то не нагуглил
Как можно получить случайный элемент из set
?
(rand-nth #{1 2 3})
не работает, выпадает ошибка, что операция не поддерживается
@kgofhedgehogs (-> #{1 2 3} vec rand-nth)
set/seq не поддерживают доступ по индексу
Ну раз только так, то ладно 😞
Но они поддерживают random sample. Можно же взять первый элемент из rand-sample?
random-sample
, опечатался
Не. Это фиговое решение
ну посмотри на исходник, там вероятностный скип, т.е. вероятность первого элемента зашкаливает
Потому что там внутри (java.util.Collections/shuffle al)
, а не K-F-Y shuffle, который можно лениво считать.
ну технически порядок в сете не детерменирован поэтому first вернет элемент с некой случайностью 🙂
Может сделаем недельный переходящий Твиттер - @clojure-russia или например @recur ? Кто готов первым повести?
Раз в неделю новый ведущий, представляется, обязан быть активен на около кложурные темы, через неделю передает следующему
по аналогии с backend(frontend)secret - clojure-secret 😄
@skoboshki-madness