Stricter operations for Typed Clojure, inspired by Scala and other statically typed langs