昨天,Rich把Clojure的"新"分支拉到了主人的手中.我们现在正在接受deftype和defprotocol的美.当然,我来自Haskell,我很想定义类似我在Haskell中的类型,这对于几乎所有缺少一次性元组的东西都是如此,但我不认为它在Clojure世界中的效果如此;).在Clojure的Common Mistakes帖子中,有人提到过度使用结构是他第一次出现时犯的错误,来自OOP.由于deftypes似乎与结构类似,我想知道是否同样适用于那里.
所以,我的问题是:什么时候使用deftype是个好时机?
kot*_*rak 13
一个领域deftype
是性能.协议的方法在deftype上非常快.deftype也可能有原始字段,因此在处理数字时不再有拳击......
另一个领域可能是Java互操作,因为deftype可以实现接口(如果AOT编译)具有命名类.
一般来说,定义带有协议的抽象并使用deftype实现它们的基本思想.
Rich详细介绍了他的动机:http://www.assembla.com/wiki/show/clojure/Datatypes
归档时间: |
|
查看次数: |
3684 次 |
最近记录: |