Thanks for the answer Stuart.
I was receiving an error when I reload deftype, the error was saying that I
cannot define a method of a protocol which is not defined in the protocol
although I could even see the method in the protocol map.
I just discovered the error: I forgot the :aot field ref
Reloading a protocol definition invalidates any instances of objects which
implement the protocol. This may be the problem you are seeing.
After reloading a protocol definition, you must also reload any code with
`deftype`, `defrecord`, or `reify` which implements the protocol, THEN
re-evaluate