sci

yogthos 2026-06-05T03:52:52.919309Z

So https://github.com/yogthos/jolt now runs all of SCI's pure Clojure and the only things stubbed are SCI's host interface for the reader, loader, and JVM proxy modules which is the layer jolt implements itself now. I've also found that Jank seems to have the most comprehensive tests for Clojure API surface. Porting those over covered majority of the gaps.

🎉 2
2026-06-05T08:25:38.726539Z

That looks great! I don't know anything about Janet, and maybe I'm asking something silly now, but would this allow you to run Clojure code on embedded devices like Raspberry PI?

yogthos 2026-06-05T12:00:44.728929Z

yeah that's my hope, Janet is a very light runtime, and I intentionally left an option to compile jolt using mutable data structures, so technically it should fit in a small footprint like Pi no problem

yogthos 2026-06-05T12:02:12.225479Z

another nice thing with Janet is that even though it's compact, its fairly batteries included having stuff like http server available, so this could end up being a really light weight runtime that can do some useful things, I'm hoping to bolt on tools deps support on top of Janet package manager, and then see if I can get Selmer to compile 🙂

❤️ 1
2026-06-05T12:05:04.140249Z

That's really cool!

yogthos 2026-06-05T12:41:29.053429Z

should be fun if it works out, a really small Clojure runtime with nrepl could be fantastic for all sorts of automation too, you could drive something like this with it too then https://www.dexterindustries.com/brickpi/

👀 1
neumann 2026-06-05T15:43:55.557179Z

This is exciting! I like that SCI and Janet are both quite mature, so it makes for a great combination.

yogthos 2026-06-05T16:14:36.946149Z

that was my thinking as well, the pieces are already there, so it's just a matter of putting them together, and Janet is similar enough to Clojure syntactically so that you can reuse a lot of the existing compiler work

yogthos 2026-06-05T04:46:58.712419Z

I've also started making specification tests that might be generally handy, these focus on documenting the full contract for the language https://github.com/yogthos/jolt/tree/main/test/spec

❤️ 2
yogthos 2026-06-05T05:36:21.971999Z

and also added an ebnf grammar for good measure, I think it would be really useful to have a formal spec of what constitutes portable Clojure so that there are clear and well defined behaviors across dialects https://github.com/yogthos/jolt/blob/main/doc/grammar.ebnf

💯 2
borkdude 2026-06-05T06:52:38.681399Z

See also https://github.com/jank-lang/clojure-test-suite for a behavioral test suite across dialects

borkdude 2026-06-05T06:53:27.253129Z

Ah I see you mentioned that above

yogthos 2026-06-05T11:53:18.393679Z

yup, that thing is a life saver