If you're coming from Java, you might want to look at Clojure. It has immutable datastructures and Java interop.
> Even though Clojure might be a more obvious choice for someone, like me, who is used to working with the JVM, I actually wanted to try using something else with a lighter runtime and great performance.