Clojure experimentation in self-validating data types.