En clojure, ¿cómo escribo tipo sugerencia un tipo que he creado? (Quiero anidar los tipos.)Tipos anidados en clojure?
p. Yo había pensado que esto funcionaría:
(deftype A
[#^somePrimitive someField])
(deftype B
[#^A Avalue])
Esto nos lleva a un mensaje de error:
Unknown location:
error: java.lang.ClassNotFoundException: A
Nota: Los tipos clojure son una nueva característica que existe actualmente sólo en la 'nueva' rama de clojure.
Edit: Estaba confundido por las diferentes formas de tipo de alusión en clojure para tipos java y clojure. clases Java se insinúan como
#^java.some.class
mientras que los tipos clojure se insinúan como:
#^:some.Namespace/type
¡Impresionante, gracias! –