Mic check

unsorted — cgrand, 5 March 2018 @ 13 h 04 min

Long time no post.
In the years since the last post, I’ve worked on several projects, let me introduce some!

First there’s xforms a collection of transducers-related stuff. Xforms is really great if you need to do any kind of aggregation, it also provides transducer versions of some core functions and several new transducing contexts (strings, io). Plus it has optimizations for dealing with key-value pairs without ever allocating a pair object (best case).

Xforms was initially a clojure/jvm lib but Mike Fikes started porting it to cljs, however I was not happy with having to either split the codebase or break the API to solve the “macros-and-code-in-one-file” problem. With his and António’s expert knowledges to guide me I figured out a couple of macros which allows to write cljc code which mixes macros and code, works on clj/jvm, cljs/clj and self-host cljs (yes there are macros to figure out the cljs flavor). This is really useful when porting clj/jvm code to cljs/*. These macros are packaged in a library named Macrovich.

With colleagues at HCA Datalab we worked on Powderkeg (“Keg” for friends) which basically turns Apache Spark in a giant transducing context. Plus it works without any AOT. Start the repl, connect to the cluster, run your transducers on RDDs. Benefits: you can experiment against real data with a tight feedback loop and you can test your computations with no dependencies on Spark.

The part of Keg that makes the REPL-no-AOT experience possible has been repurposed into Portkey which allows to deploy freshly REPLed functions as AWS Lambdas; a sub project is aws-clj-sdk an AWS api generated from the machine-readable services descriptions provided by Amazon (like official SDKs or Python’s Boto); Kimmo Koskinen and Baptiste Dupuch are hard at work on both projects.

Last, there’s Unrepl which aims to provide better REPLs and tooling in general without requiring a single dependency to your project. All that is needed is a plain socket repl and an Unrepl-powered tool (like Spiral for Emacs, Vimpire for VIM, or Unravel for the terminal).


  1. Hi Chris,

    It is great to have to you blog again. Your insight and experience is wonderful, and I am a big fan of your Clojure book. Perhaps a second edition one day?!

    Personally, I do a lot of work on AWS, so I am excited to see the new library (portkey-cloud/portkey and portkey-cloud/aws-clj-sdk).


    Comment by Nick Brandaleone — 6 March 2018 @ 2 h 11 min
  2. monuments related to deep

    Comment by Securityonj — 14 December 2020 @ 11 h 47 min
  3. way. Handwritten book

    Comment by Rachiommr — 15 December 2020 @ 23 h 26 min
  4. only a few survived.

    Comment by BlackVueqyp — 16 December 2020 @ 6 h 52 min
  5. drafts of literary works

    Comment by Premiumuuu — 22 December 2020 @ 4 h 11 min
  6. The most common form

    Comment by Avalancherpe — 7 January 2021 @ 8 h 16 min
  7. XVII century was Nicholas Jarry .

    Comment by Speakerjzc — 23 January 2021 @ 22 h 38 min
  8. the best poets of his era and

    Comment by Rubberpeo — 13 February 2021 @ 1 h 34 min
  9. XVII century was Nicholas Jarry [fr].

    Comment by Infraredtef — 18 May 2021 @ 17 h 31 min
  10. Europe, and in Ancient Russia

    Comment by Mojavewte — 6 July 2021 @ 22 h 38 min
  11. handwritten books were made,

    Comment by Visioneft — 8 July 2021 @ 19 h 26 min
  12. Since the era of Charlemagne

    Comment by Batterypoi — 17 July 2021 @ 5 h 40 min
  13. Since the era of Charlemagne

    Comment by Plasticdyk — 11 August 2021 @ 23 h 18 min
  14. bride, Julie d’Angenne.

    Comment by Yamahapmh — 12 August 2021 @ 15 h 47 min
  15. Europe, and in Ancient Russia

    Comment by WILDKATwxa — 20 August 2021 @ 18 h 16 min
  16. book about the chess of love “, created by

    Comment by Candypsx — 22 August 2021 @ 23 h 55 min
  17. Century to a kind of destruction:

    Comment by Telecasterkxm — 28 August 2021 @ 17 h 57 min
  18. from lat. manus – “hand” and scribo – “I write”) [1]

    Comment by Nespressodwj — 29 August 2021 @ 18 h 01 min
  19. European glory, and even after

    Comment by Broncoxzi — 21 September 2021 @ 3 h 56 min
  20. (palimpsests). In the XIII-XV centuries in

    Comment by Leupoldzld — 27 December 2023 @ 5 h 47 min
  21. (palimpsests). In the XIII-XV centuries in

    Comment by Artisanchh — 21 January 2024 @ 6 h 11 min

RSS feed for comments on this post. TrackBack URI

Leave a comment

(c) 2024 Clojure and me | powered by WordPress with Barecity