我最近看到很多关于 Clojure 中谓词分派的讨论,想知道这件事是否有什么意义。换句话说,什么是谓词分派以及它与泛型函数、OOP 多态性和模式有何不同?
谢谢
谓词分派包含泛型函数、OOP 多态性、模式匹配等。一个好的概述是谓词调度:统一的调度理论 http://www.cs.washington.edu/homes/mernst/pubs/dispatching-ecoop98-abstract.html作者:迈克尔·恩斯特、克雷格·卡普兰和克雷格·钱伯斯。从其摘要来看:
谓词分派通过允许任意谓词控制方法的适用性并使用谓词之间的逻辑蕴涵作为压倒一切的关系,概括了以前的方法分派机制。选择处理消息发送的方法不仅取决于参数的类(如普通的面向对象调度),还取决于子组件的类、参数的状态以及对象之间的关系。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)