Notes.
There’s been a lot going on in the Clojure community in the last few weeks. There was another sprawling discussion about community involvement in the development of the Clojure language, and then the Conj came afterwards with a bunch of great talks. I want to give a special mention to Alex Miller and whoever else was involved with getting the talks up on YouTube so quickly. I wasn’t there, but I was still able to follow along virtually with not a lot of delay.
If you’ve enjoyed The REPL this year, either in podcast or newsletter form, please consider supporting me by signing up for a trial of Deps. Deps is a private, hosted, Maven repository service that I run. I enjoy writing and recording The REPL, but it does take me away from other paying work. If you or your company needs to share private Clojure dependencies and don’t want to have to run, patch, maintain, and backup your own Maven repository, take a look at signing up for Deps. If Deps isn’t a good fit for you, please let me know also, that’s really useful information.
Thanks!
-main
- REBL is a new tool for exploring the data in Clojure programs from Cognitect. The release of this library and the accompanying talk explain the motivation for several recent additions to Clojure: datafy, nav, and extending protocols via metadata. REBL also has an interesting business model. Non-commercial use is free. For commercial use, Datomic customers get it as part of their Datomic license, or you can join the Cognitect Patreon to get a license to it.
- For a long time I’ve wished that Clojure had something similar to
gofmt
, a source code formatter which defines a canonical and fairly strict set of formatting rules for Clojure. I wrote up a proposal for such a formatting spec and tool on ClojureVerse. Nikita Prokopov came up with a proposal for one possible set of formatting rules. There’s also a GitHub repo with more detailed discussions on the different possible formatting rules.
- I wrote about how to upgrade your Clojure projects to Java 11 on the Deps blog.
- Tim Baldridge on contributing to Clojure
- Open Source is Not About You by Rich Hickey.
Libraries & Books.
- cloroutine is a generic, macro-based, stackless coroutine builder for Clojure and ClojureScript. The author also has a great announcement post on ClojureVerse talking about the motivations and architecture. It’s in a similar niche to xodarap which I mentioned in my last newsletter. The difference is that where xodarap uses core.async, cloroutine takes inspiration from core.async and rewrites functions in a similar manner to the core.async
go
macro.
- Get Programming with Clojure is a new book from Yehonathan Sharvit (Creator of Klipse), in pre-release at Manning.
People are worried about Types. ?
- On a recent podcast with Martin Klepsch, we were talking about Hoogle, the search engine for Haskell that lets you search by type signature. We wondered whether something similar would be possible for Clojure. Michael Borkient took this idea and created re-find. You can type input arguments and expected results or predicates and it will show you a list of functions which fit the parameters. It’s hard to explain the experience of using it, I recommend trying it out.
- Sean Corfield writes about nil, NULL, and optionality in the context of SQL and clojure.java.jdbc.
Foundations.
- Leiningen 2.8.2 and 2.8.3 were recently released. 2.8.3 is a hotfix release for some bugs that were introduced in 2.8.2.
- emidje is an Emacs test runner for Midje.
- The recent Day of Datomic Cloud training session was recorded and is available for free on YouTube.
- If you can’t wait for AWS to add support for Java 11, you can use Ghadi Shayban’s new AWS Lambda Custom Runtime.
- Configuring zprint
Recent Developments.
- Clojure is nearing release, 1.10.0-RC5 is out.
- Alex Miller has a great update on what he’s been working on with Clojure in the last week.
Learning
- Tom McTighe had a great talk at Clojure eXchange about applying Clojure’s design principles to it’s documentation. Here’s a sketch of some of the ideas in the talk.
- There’s also a roundup of all of the Clojure eXchange talks from Solita.
Misc.
One perspective from BloombergNEF about preparing for a low carbon world. I sometimes avoid looking at climate change related news because it can feel so paralysing. This was a good overview of both the looming challenges, and some bright spots, particularly around solar and wind generation.
I’m Daniel Compton. I maintain public Maven repositories at Clojars, private ones at Deps, and help fund OSS Clojure projects (along with tons of generous members like Pitch, JUXT, Metosin, Adgoji, and Funding Circle) at Clojurists Together. If you’ve enjoyed reading this, tell your friends to sign up at therepl.net, or post a link in your company chatroom. If you’ve seen (or published) a blog post, library, or anything else Clojure/JVM related please reply to this to let me know about it.