I think this is a neat project and a nice demonstration of how Lisp-influenced Ruby is. However, whenever people post "Lisp in Ruby" stories, I always hope that it'll be a "Clojure in Ruby" implementation. I am surprised no-one has done it yet.
Apart from using the JVM, what is the advantage of Clojure over other Lisp dialects?
Clojure is immutable by default, which is a pretty big difference AIUI. It also has a pretty strong emphasis on concurrency, including a bunch of primitives for such. It uses STM.
A bunch of data structures are first class, like vectors, maps, and sets. There are literals for each of them, and you can use maps and sets as functions. You can also use keywords as functions against maps to e.g. retrieve the :name value from a list of maps:
user=> (map :name [{:name "foo"} {:name "bar"}])
("foo" "bar")
Lambda literals are nice: user=> (map #(* 2 (inc %)) [1 2 3])
(4 6 8)
They can take multiple args (e.g. %1 %2) instead of just %.Threading macros are somewhat closer to Haskell's syntactically straightforward function composition:
user=> (->> [1 2 3] ;; this'll be the last arg passed to each fn below
#_=> (map #(* 2 %))
#_=> (map inc))
(3 5 7)
I'm sure there's more. Maybe a more experienced Lisper can chime in.