Props for the effort put into this! I came across rhine-ml a while ago and thought it would have been a nice, native alternative to Clojure. Both of these projects look very well thought out.
Curious, is this a learning project? It seems that way considering you go into detail about the inner workings.
Thank you. I actually made a lot of design mistakes in both rhine-ml and rhine, which is why I shelved them as "learning projects". I do fully intend to write a solid compiler for a well-designed language in the future. I have to make my mistakes first.
So, for the curious, the big mistake in rhine-ml is making it untyped: it generates terrible LLVM IR that executes super-slowly. I could try and optimize it, or go the types route. I chose types, and I don't believe in the optional-typing escape hatch.
The big mistake in rhine is that I wrote it in C++. It'll be a decade before it can lift its own weight, and OCaml is a great language to build a compiler in.
> Effort put into rhine: 1 year, 1 month
Props for the effort put into this! I came across rhine-ml a while ago and thought it would have been a nice, native alternative to Clojure. Both of these projects look very well thought out.
Curious, is this a learning project? It seems that way considering you go into detail about the inner workings.