Clojure Implemented in Pure Python
github.com
Clojure Implemented in Pure Python
1–10 of 56 posts
Re: Clojure Implemented in Pure Python
#2Really nice. I hope it will make clojure scripts faster to start than with the jvm and thus a real alternative as a scripting language.
Re: Clojure Implemented in Pure Python
#3This is awesome.
Re: Clojure Implemented in Pure Python
#4That looks nice. I have to ask: Clojure on the JVM is fast: can a PyPy runtime really compete after Hotspot has a chance to optimize?
Re: Clojure Implemented in Pure Python
#5That looks nice. I have to ask: Clojure on the JVM is fast: can a PyPy runtime really compete after Hotspot has a chance to optimize?
I'm less concerned with speed on this platform. I think it'd be excellent even if only suitable for small scripts that need to start up fast.
Re: Clojure Implemented in Pure Python
#6Really nice. I hope it will make clojure scripts faster to start than with the jvm and thus a real alternative as a scripting language.
ClojureScript scripts can already do this. :)
Re: Clojure Implemented in Pure Python
#7That looks nice. I have to ask: Clojure on the JVM is fast: can a PyPy runtime really compete after Hotspot has a chance to optimize?
All VM JITs compile to statically-typed machine code, so it's doubtful that building a VM from the ground up for dynamic code is going to yield major performance improvements. There are some enhancements that give VM-level visibility into dynamic invokation (like INVOKEDYNAMIC in JVM 7), but this has a relatively small performance impact on real-world codebases. In addition, the modern JVM is a sophisticated, highly-tuned machine with millions of man-hours on the books. It's unlikely to be eclipsed any time soon.
Re: Clojure Implemented in Pure Python
#8Er, what about Java interop? The notions of atoms, agents and refs? How are you going to translate these into "pure Python"?
Re: Clojure Implemented in Pure Python
#9Re: Clojure Implemented in Pure Python
#10Er, what about Java interop? The notions of atoms, agents and refs? How are you going to translate these into "pure Python"?
CLR Clojure doesn't have Java interop either. Neither does clojurescript. I don't think its a requirement for a Clojure implementation.
Atoms, refs and agents seem like an integral part of the Clojure language however.