В Clojure 1.2:
(defprotocol PP
(foo [bar])
(foo [bar baz]))
=> PP
(extend-protocol PP
Object
(foo [bar] 1)
(foo [bar baz] 2))
=> nil
(foo "hello!")
=> #<CompilerException java.lang.IllegalArgumentException: No single method: foo of interface: PP found for function: foo of protocol: PP
Где я ошибаюсь?Я ожидаю увидеть 1 как результат от функции foo с одним аргументом, так как "привет!"явно является экземпляром java.lang.Object.