【发布时间】:2011-12-12 02:34:19
【问题描述】:
例如,如果我有两条不同的记录,但它们共享一些公共字段,有没有办法让两条记录共享一个公共基础记录?似乎协议只允许声明方法签名。
【问题讨论】:
-
两个实体共享某些字段并不是在它们之间创建继承关系的充分理由。也许提供一些示例使用场景。
-
例如,我使用记录来表示已解析的 SQL 查询。所以我有 SELECT、UPDATE、INSERT 等的记录。它们有一些共同的属性,例如“字符串”属性。当我使用多态函数处理它们时,我希望确保它们都有一些共同的属性。
-
记录只是花哨的地图,所以我不清楚“确保它们都有一些共同的属性”是什么意思。为什么不能直接拨打
(:string a-record)?此外,记录可能具有的键集与具体类型可以表达的行为不同。您要解决的实际问题是什么?
标签: clojure functional-programming