I'm surprised people have managed to port Clojure to so many platforms. Seems like a ton of work! :)

From what I understand the vanilla JVM implementation isn't built around a small core. So it's not like porting a Scheme. All the data structures and what-not are written with Java (not a criticism, it's great for performance and interop)

But wouldn't it make more sense to first rewrite Clojure itself in some small/minimal scheme-y subset of Clojure - and then port that subset to Rust/Dart whatever? (With some performance penalty)

I'm not super on top or Clojure's implementation, and people are prolly not doing this for a good reason - so I'm likely off base here somewhere

> But wouldn't it make more sense to first rewrite Clojure itself in some small/minimal scheme-y subset of Clojure

How about Scheme?: https://github.com/takeoutweight/clojure-scheme

Note that this project is unmaintained and the last updates are ~10 years old.