I'm working on a TIM for Clojure. Clojure uses Boolean.TRUE and Boolean.FALSE for it's boolean values, and for some reason when I pull a Boolean value out of the DSO and compare it to a local value using ==, I get incorrect results.
I don't think Clojure ever creates Booleans, but just uses Boolean.TRUE and Boolean.FALSE. I tried making Boolean.TRUE and Boolean.FALSE roots, but got an error.
As I understand, java.lang.Boolean values are literals. Is there something special I need to do to make them Boolean.TRUE == Boolean.TRUE across VMs, or is this not supported?