Tag: multimethod

Clojure multimethods与协议

我是一名Clojure新手,正在寻找什么时候使用协议以及何时使用多方法的具体示例。 我知道协议通常是为了创build一个types层次结构和典型的面向对象的东西,它们是在多方法之后添加到语言中的,而且这些协议通常具有更好的性能,所以我的问题是: 协议是否意味着要取代multimethods? 如果没有,你能给我一个例子,我会使用multimethods而不是协议?

什么是“多态点菜”,我怎样才能从中受益呢?

Rick Hickey在Simple Made Easy的演讲中谈到了“ 多态点菜 ”(约30点到video)。 在同样的背景下,他还提到了Haskell的types类和Clojure的多方法 (和协议)。 由于我对这些概念不是很熟悉,所以我想了解它在实现简单性时的用处。 我对Scala中这个概念的任何例子或展示特别感兴趣。