由于显而易见的原因,以下内容不起作用.
(defprotocol Monoid (mappend [a b]) (mzero []))
mzero零参数,协议中不允许(或没有意义)零参数方法.在Haskell或Scala中,调度是基于类型而不是基于值的,这不是问题.
mzero
Monoid在Clojure中概念化和编写协议的正确方法是什么?
Monoid
functional-programming clojure monoids
clojure ×1
functional-programming ×1
monoids ×1