This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-01-17
Channels
- # announcements (24)
- # babashka (22)
- # beginners (49)
- # cider (16)
- # clj-kondo (8)
- # cljsrn (4)
- # clojure (87)
- # clojure-australia (7)
- # clojure-europe (44)
- # clojure-nl (4)
- # clojure-sweden (7)
- # clojure-uk (24)
- # clojurescript (5)
- # core-async (7)
- # cryogen (8)
- # cursive (22)
- # data-oriented-programming (2)
- # datomic (1)
- # emacs (6)
- # events (4)
- # fulcro (11)
- # google-cloud (1)
- # introduce-yourself (1)
- # java (8)
- # jobs (3)
- # lsp (10)
- # observability (1)
- # off-topic (12)
- # polylith (12)
- # re-frame (6)
- # reitit (36)
- # remote-jobs (1)
- # ring (4)
- # ring-swagger (1)
- # rum (4)
- # schema (1)
- # shadow-cljs (18)
- # sql (56)
- # tools-deps (33)
maybe we should consider not return thread last for those cases, seems kind of too specific though
using macroexpand, looks like it’s “correct” but very awkward:
(clojure.core/macroexpand
'(->> [uid [:lobby/list lobby-summaries]]
(let [filtered-lobbies (filter-lobby-list lobbies user)
lobby-summaries (summaries-for-lobbies filtered-lobbies)])
(for [user users
:let [uid (:uid user)]])
(into [])))
(into
[]
(for
[user users :let [uid (:uid user)]]
(let
[filtered-lobbies
(filter-lobby-list lobbies user)
lobby-summaries
(summaries-for-lobbies filtered-lobbies)]
[uid [:lobby/list lobby-summaries]])))
let
in such position will make sense if you think it as Haskell's where
;)