OSS updates March 2023

In this post I'll give updates about open source I worked on during March 2023.

Sponsors

But first off, I'd like to thank all the sponsors and contributors that make this work possible! Top sponsors:

If you want to ensure that the projects I work on are sustainably maintained, you can sponsor this work in the following ways. Thank you!

If you're used to sponsoring through some other means which isn't listed above, please get in touch.

On to the projects that I've been working on!

cherry

Experimental ClojureScript to ES6 module compiler

This month I've been preparing cherry as a compiler that you can embed in your existing CLJS / shadow-cljs applications. This makes cherry an additional alternative to SCI and self-hosted CLJS.

Read about embedding cherry into your application here.

I've been working on several PRs to include cherry as an additional evaluator in:

scimacs

The Small Clojure Interpreter (SCI) integrated with emacs as a loadable module.

This is a new project by Jack Rusher and I've helped him with the SCI integration.

clj2el

Transpile clojure to elisp. A brand new project to transpile Clojure to Elisp. It might be of value for those who know Clojure better than Elisp and want to have something to get started. It's far from complete. Try it in the playground here.

deflet

Make let-expressions REPL-friendly!

The deflet macro lets your write inline-def expressions, while expanding those to regular let expressions, giving you the benefits of REPL-driven development without polluting production code with top level vars.

babashka

Native, fast starting Clojure interpreter for scripting

New release: 1.3.175 (2023-03-18)), 1.3.176 (2023-03-18)

Highlights:

The clojure.core.async/go macro now uses virtual threads.

Many small fixes and upgrades.

See the complete CHANGELOG.

babashka.json

This is a JSON abstraction library that you can include in babashka and JVM projects while also including your own favorite JSON implementation. The idea is that babashka libraries can include this, while JVM projects don't have to switch their JSON implementation to cheshire.core.

Babashka compatibility in external libs

I worked together with the maintainers of the following libraries to make them compatible with babashka:

clj-kondo

Static analyzer and linter for Clojure code that sparks joy

New release: 2023.03.17

Some highlights:

Check the changelog for details.

SCI

Configurable Clojure/Script interpreter suitable for scripting and Clojure DSLs

New release: 0.7.39 (2023-03-07)

See changelog for more.

Contributions to other projects

Brief mentions

The following projects also got updates, mostly in the form of maintenance and performance improvements. This post would get too long if I had to go into detail about them, so I'll briefly mention them in random order:

Other projects

These are (some of the) other projects I'm involved with but little to no activity happened in the past month.

Published: 2023-04-07

Tagged: clojure oss updates

Archive