Fork me on GitHub

Very exciting progress! Great work, @U45FQSBF1!


This time around let's transform the clojure.core source into portable Clojure with .cljc, .cljr and *.clj files cleanly separated (such that when compiling with mainline clj, all tests pass for JVM, too). Yes, I volunteer to work on that, since I brought it up. 🙂 You did make it a bit easier by commenting everywhere you made a change to the original clj file.


The only hesitation I have is maintenance. Right now core.clj and most of the other Clojure source files are line# equivalent. If there is a commit in the JVM version on line 3178 of core.clj, I can go right to line 3178 in my copy and make the change. I should probably just over that. It would make a huge difference for things like editing the comments properly, which I do not do.


Did you consider using Clojure itself to do this rewriting?


I did consider it. Several reasons I didn't go that way. One is the whole bootstrapping issue -- you need a clojure to bootstrap your new clojure implementation. Another is that I figure doing in Clojure-in-Clojure is above my pay grade. That's a Rich project. And I wanted to learn F#. 🙂

😆 2