This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
- # beginners (55)
- # boot (1)
- # chestnut (1)
- # cider (130)
- # clara (31)
- # cljsrn (1)
- # clojure (12)
- # clojure-dev (4)
- # clojure-india (1)
- # clojure-italy (2)
- # clojure-uk (33)
- # clojureindia (1)
- # clojurescript (12)
- # component (1)
- # datascript (5)
- # datomic (2)
- # duct (2)
- # emacs (16)
- # hoplon (1)
- # jobs (1)
- # lumo (13)
- # off-topic (3)
- # onyx (4)
- # remote-jobs (1)
- # schema (1)
- # shadow-cljs (110)
- # spacemacs (2)
- # specter (44)
- # vim (6)
> This repository has been archived by the owner. It is now read-only. what's this? some formal github mechanism for telling people you don't want to work on it anymore?
Hey folks 👋 - I haven’t been here for ages - been at a non-clojure client, and with a new toddler haven’t had much time for clojure play at all. 😞
But anyway, i’m doing a bit of tinkering, and find stuff I can’t remember well after 18 months away. I want to do some basic core async stuff - sending messages from one bit of script to be processed somewhere else - and I find I’m vague on the details of how it all works; and most of my old references aren’t much use. What’s a good place to go for basic “how to do stuff with core async”? (And has anything changed in that space in the last couple of years? 🙂 ) (This is clojure not clojurescript)
Also, any quick overview of other new cool stuff in the last 18 months? 🙂 When life started getting busy on me, clojure.spec was just starting to kick off. I’m guessing it’s still going strong… any other new stuff I should be checking out?
I've been trying to do this with Specter, but I figure there may be another way (possibly using something from
clojure.walk?): essentially just a macro that replaces all instances of indexed anonymous function arguments, e.g.
%3, with gensyms and then wraps the
seq containing them with
fn* and a vector with the corresponding binding.
So like that using
setval from Specter. Except here, the navigator in
transform doesn't move up to the
seq containing the pattern but rather at the match itself.
Resulting in things like
(interleave (range) (fn* [G__33690] G__33690)) vs. the desired
(fn* [G__33690] (interleave (range) G__33690))
@korny Welcome back! I don't think much has changed in core.async in 18 months -- just lots of bug fixes.
clojure.spec is huge thing, IMO, and we're loving it in production code for data validation and conformance (as well as testing). The only big news is the new
clj command-line tool and
deps.edn for lightweight, standardized dependencies etc.