Clojure имеет gen-class, reify, proxy, а также deftype и defrecord для определения новых типов данных, подобных классам.Для языка, который ценит синтаксическую простоту и не терпит ненужной сложности, это кажется отклонением. Может кто-нибудь объяснить, почему это так? Может ли быть достаточно defclass в стиле Common Lisp?