This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-06-01
Channels
- # announcements (7)
- # beginners (30)
- # boot (6)
- # calva (24)
- # cider (8)
- # clj-kondo (8)
- # cljs-dev (16)
- # cljsrn (8)
- # clojure (60)
- # clojure-italy (19)
- # clojure-mexico (6)
- # clojure-nlp (2)
- # clojure-uk (11)
- # clojurescript (36)
- # datomic (11)
- # hoplon (1)
- # juxt (2)
- # kaocha (1)
- # keechma (13)
- # nrepl (1)
- # off-topic (51)
- # reagent (7)
- # rewrite-clj (17)
- # robots (7)
- # shadow-cljs (2)
- # sql (4)
- # testing (1)
- # tools-deps (11)
- # vim (12)
but (-> my-col (map f) (map g))
inserts the collection as the wrong argument to map
... why does this work?
clojure-scratch.core> (->> {:a 1} (:a))
1
clojure-scratch.core> (-> {:a 1} (:a))
1
well thats a big question in a way.
->> threads the first value through the other forms (in this case just (: a)
. And in that case, (:a {:a 1})
works because keywords can act as functions on a map.
Does that help?
thanks @U0DJ4T5U1, that is helpful. i overestimated the difference between thread first and thread last, i think
Any tips, articles, videos or books on how to approach studying a new codebase? Is this even a thing people build workflows/systems for?
not really 🙂. It's such a generic thing that any tool or methodology would probably be worse then staying flexible. Get plenty of sleep! Have open and honest communication with your team about whats going on.
Thank you for your response 🙂 I still have no team (never had one, solo learner) or access to other people programming (besides videos or online live coding) so I often wonder about such stuff that you would just learn by watching a few people with more experience doing.
I have a single programmer friend whom I've never met personally, and he explained to me how he uses grep
like tools to regexp search projects and find relevant definitions to keep on grepping and to understand where things are called and why. So for now I have: sleep well, abuse grep
and, when possible, communicate honestly with those involved. 🙂
I'm in a point in my personal path that I'm finding these nice places to work and looking at their open source libraries, so I'm doing a lot of reading and sometimes it's tough. When it's Clojure I jump back and forward with cider-find-var
and cider-pop-back
, highlight stuff in a file with highlight-symbol
and search the entire project with Projectile and things are improving. In other languages it's harder. Maybe I need to start looking at the tests first?
I'm using Cursive as my primary Clojure IDE and I really like it. However I was wondering that should I also be fluent using Emacs / Cider if I have some issues in some production environment (e.g. headless Linux) running Clojure and if I want to start REPL in that box? Or in this kind of situation do Clojurians usually just create a VPN tunnel from their local workstation to the production box and connect their workstation IDE's REPL to the remote nrepl session somehow?
You can also open a REPL from IntelliJ using cursive. Only reason to learn Emacs / Cider I can think of is if the rest of the team is using it.