This is great, especially since it removes the TCO limitation from running on the JVM. I will definitely give this a try.
I don’t know much Clojure, but I thought that lack of TCO was not a problem because you can just manually add `recur` ( http://clojure.org/special_forms#Special%20Forms--%28recur%2... ) when you need it. Are there situations where `recur` doesn’t work but tail-call optimization would help?
Clojure-scheme: Compiling Clojure to Native Code via Scheme [video]
21–26 of 26 posts
Re: Clojure-scheme: Compiling Clojure to Native Code via Scheme [video]
#22Earlier quoted context omitted.
For one thing, one might get interoperability with clojure libraries (at least those that aren't just wrappers around java libraries). For another thing, clojure has some nice language features and I'm all for supporting multiple lispy dialects on top of various compiler/runtime environments. My personal wish is to have clojure running on SBCL with trivial interoperability between common lisp and clojure code.
Clojure was initially implemented on cl. You should be able to find the lisp version in the history of the repo somewhere. Might be an interesting starting point.
Rich originally made two other JVM/lisp hybrids, one was running java code inside CL, the other was CL on the JVM. [1]
Clojure originally targeted the JVM and CLR, but AFAIK, one of the main motivators was always to run on a major platform.
Re: Clojure-scheme: Compiling Clojure to Native Code via Scheme [video]
#23Earlier quoted context omitted.
Clojure has a much stronger polymorphism story than Scheme. This makes sense as Clojure was designed to live in an OO host language. Practically this could mean, say, much cleaner Objective-C interop.
> Clojure has a much stronger polymorphism story than Scheme Many Schemes have their own OO implementations and they all support polymorphism.
Re: Clojure-scheme: Compiling Clojure to Native Code via Scheme [video]
#24Earlier quoted context omitted.
Clojure was initially implemented on cl. You should be able to find the lisp version in the history of the repo somewhere. Might be an interesting starting point.
I'm pretty sure this is wrong. Rich originally made two other JVM/lisp hybrids, one was running java code inside CL, the other was CL on the JVM. [1] Clojure originally targeted the JVM and CLR, but AFAIK, one of the main motivators was always to run on a major platform. http://sourceforge.net/projects/jfli/
One was a Lisp(Works) FFI to Java (jfli) and the other was a generalized version of that (foil).
I have seen too the early sketch of Clojure in CL.
Look here: http://clojure.googlecode.com/svn-history/r454/trunk/src/lis...
Re: Clojure-scheme: Compiling Clojure to Native Code via Scheme [video]
#25This is great, especially since it removes the TCO limitation from running on the JVM. I will definitely give this a try.
I don’t know much Clojure, but I thought that lack of TCO was not a problem because you can just manually add `recur` ( http://clojure.org/special_forms#Special%20Forms--%28recur%2... ) when you need it. Are there situations where `recur` doesn’t work but tail-call optimization would help?
Re: Clojure-scheme: Compiling Clojure to Native Code via Scheme [video]
#26Earlier quoted context omitted.
I'm pretty sure this is wrong. Rich originally made two other JVM/lisp hybrids, one was running java code inside CL, the other was CL on the JVM. [1] Clojure originally targeted the JVM and CLR, but AFAIK, one of the main motivators was always to run on a major platform. http://sourceforge.net/projects/jfli/
He did not made any Lisp/JVM hybrids. More like foreign object interfaces to Java and .net. One was a Lisp(Works) FFI to Java (jfli) and the other was a generalized version of that (foil). I have seen too the early sketch of Clojure in CL. Look here: http://clojure.googlecode.com/svn-history/r454/trunk/src/lis...
I didn't realize there was a CL version of the compiler, cool! Thanks for the link.