Clojure

Clojure Deref (July 9, 2021)

09 July 2021
Alex Miller

Welcome to the Clojure Deref! This is a weekly link/news roundup for the Clojure ecosystem. (@ClojureDeref RSS)

Highlights

Rich Hickey wrote a paper "A History of Clojure" for the HOPL IV (History of Programming Languages) conference. This week the video for the conference was made available along with the Q&A hosted by Guy Steele. Certainly worth watching/reading if you want to know more about how and why Clojure came to be!

We got the sad news this week that the beloved 4Clojure site is shutting down. For a long, long time 4Clojure has been an early stop for many developers learning Clojure, as a source of programming problems, and perhaps more importantly as a font for answer comparisons. Many hearty thanks to David Byrne, Alan Malloy, and everyone that contributed to it over a decade of use. There are already a couple nascent efforts to bring it back to life in other forms if you want to help.

In the core

Today we put out a pre-release of the Clojure CLI and a new tools.build library covering many enhancements and new features for working with source libraries (particularly those from git), project builds, and CLI tools. Check out Source Libs and Builds for an overview and links to new docs! Feedback is welcome at https://ask.clojure.org or in the #tools-deps channel on Clojurians slack.

Podcasts and videos

  • ClojureScript Podcast - Jacek Schae has a new episode about Component with Stuart Sierra

  • FSet - Renzo Borgatti talked about a faster set library at London Clojurians

Blogs, discussions, tutorials

Libraries and tools

Some interesting library and tool updates and posts this week:

  • tools.build 0.1.2 - first release, functions for writing build programs

  • transito 2021.07.04 - helpers for common Clojure transit operations

  • deps.clj 0.0.16 - port of the clojure CLI bash script to Clojure

  • Pathom 2.4.0 - Pathom is a Clojure(script) engine for processing EQL requests

  • Fulcro 3.5 - A library for development of single-page full-stack web applications in clj/cljs

  • carmine-streams 0.1.3 - Utility functions for working with Redis streams in carmine

  • clojure-lsp 2021.07.05-15.12.14 - Language Server (LSP) for Clojure

  • lacinia-pedestal 0.16.1 - Expose Lacinia GraphQL as Pedestal endpoints

  • tools.jvm - new library for getting information about the JVM runtime

  • PCP 0.0.1 - Clojure replacement for PHP

  • sci 0.2.6 - Clojure(Script) interpreter suitable for scripting and Clojure DSLs

  • inertia-clojure 0.2.3 - Clojure adapter for inertia.js (SPAs with no API)

  • remote-repl 1.2.9 - REPL client for remote REPLs, now with automatic reconnect

  • μ/log 0.8.0 - micro-logging library that logs events and data, not words

  • mastodon-bot 1.13.6 - a bot for mirroring Twitter/Tumblr accounts and RSS feeds on Mastodon

  • maestro.clj - a new tool for managing a monorepo with deps.edn and babashka

  • vim-iced 3.5.2 - Clojure Interactive Development Environment for Vim8/Neovim

  • specter-cli - A new native Specter CLI using GraalVM native-image and SCI

  • Calva 2.0.203 - Clojure & ClojureScript in Visual Studio Code

Fun

If you like Minecraft and Clojure, check out Witchcraft to do your crafting from a REPL!