defrecord could tell you if, e.g., you didn't specify an interface before leaping into method bodies.
(defrecord TestRecord [afield bfield cfield]
(printc [_] (println cfield)))
ClassCastException clojure.lang.PersistentList cannot be cast to clojure.lang.Symbol clojure.core/ns-resolve (core.clj:4238)
Converted from http://www.assembla.com/spaces/clojure/tickets/405
stu said: This could be fixed with an assert-valid-defrecord call in core_deftype, similar to assert-valid-fdecl in core.clj. Such a function would also be a place to hang other defrecord error messages.