Fork me on GitHub

> 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?


I should archive several dozen things


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 don’t know if my next client will be clojure-friendly - here’s hoping!)


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 transform and 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))


Any ideas on a Saturday?


@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.