I'm still confused about the state of Clojure CLR. I initially thought it was the "OG Clojure" before Rich dumped CLR and went for JVM instead. Is it maintained properly and kept up to date with Clojure proper?
(I used to be in the "Clojure is not Lisp" camp, but I've grown up at some point.)
My understanding is that the Clojure community points everyone to Arcadia[0] since it's maintained and a bit more public about what their exact goals are. Unfortunately, neither are terribly well documented and so I've not personally used either
I just tried it out of curiosity and the startup time is absolutely brutal:
-▶ time dotnet ./Clojure.Main.dll <<<""
Clojure 1.10.0-beta1
user=> user=>
dotnet ./Clojure.Main.dll <<< "" 16.74s user 0.18s system 99% cpu 16.980 total
Compared to Clojure on JVM:
-▶ time clojure -e '(System/exit 0)'
clojure -e '(System/exit 0)' 3.02s user 0.16s system 268% cpu 1.184 total
I wonder, did I do something wrong (I'm not a .NET developer by any stretch) or does it simply take that much time on the CLR?
.NET may suffer from the same problem as Julia: the first runs will trigger the jit system and result in awful start times. There are ways to avoid this, but I don't know if it works (yet) for clojure.