09 July 2021
Alex Miller
Welcome to the Clojure Deref! This is a weekly link/news roundup for the Clojure ecosystem. (@ClojureDeref RSS)
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.
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.
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
Debugging in Clojure by Dave Martin
A la carte specs for your re-frame subs and events by Inge Solvoll
Functional Workplaces: Freshcode - Why and How to Learn Clojure by Artem Barmin
Transient Data Structures in Clojure by Roman Ostash
https://clj-br.github.io/ - also check out the new self-editable user group page for Clojure Brasil! Fascinante!
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
If you like Minecraft and Clojure, check out Witchcraft to do your crafting from a REPL!