clojit clojure compiler & vm

About

We are building a new VM (Virtual Machine) for the Clojure language. We want to stress that this VM is in no way being developed to replace JVM Clojure.

Since this project needed a name, we did what all unimaginative hackers do and just crammed our project goals into the name. Thus we call this project Clojit, Clojure + JIT (Just-in-time Compiler).

This project falls under the category 'serious hobby project'. We work on it because it's fun. We have no goals beyond making cool open source software and learning more about all aspects of computer science.

If you have any interest in this project, please contact us with you questions, comments, rants or best of all with pull requests. Since our goal is all about learning, we hope that we can start a dialogue with any enthusiasts or professionals who work on similar projects.

Who are the people behind this project?

Nick "nickik" Zbinden

I initiated this project, because I have been fascinated by JIT compilers for a long time and have wanted to build one myself. I had prepared enough, it was time to start writing code. At this point, I talked about the idea with my friend gandro and asked him if he was interested in joining me.

I have been working with Clojure since v1.0 and I chose it because it is a simple, well designed language but still has some advanced features that make it challenging. I'm also interested in exploring how immutable data can be used to optimise the VM (JIT and GC).

My dayjob is working as a web developer and I'm currently working in Java, but I have also worked on Android.

Sebastian "gandro" Wicki

The proposal by Nick to write our own VM and JIT was the perfect excuse for me to dive deeper into Rust and finally learn Clojure. Besides, I could also learn a thing or two about garbage collection and JIT compilers on the way.

I generally enjoy hacking on low-level stuff and systems programming. I am currently studying computer science.

  • E-Mail: gandro@gmx.net
  • PGP Fingerprint: F562 794E 87F2 433F 1F03 C842 7E18 B2FA AD73 78D6