如果给出以下内容,应该叫什么'foo'?
x.items是一个集合,y.values是一个集合。
function a(key)返回x.items的有序列表
function b(x.item)返回单个y.value
定义foo(a,b),它返回一个函数d,使得d(key)返回由以下定义的y.values列表:map(b,a(key))。
这感觉就像一个相当普通和通用的功能组合,但我不知道该怎么称呼它。
答案 0 :(得分:2)
function a(key) returns an ordered list of x.items
function b(x.item) returns a single y.value
除了排序之外,a()实际上是一个过滤器,即它根据一个键从x.items“过滤”或“选择”项目。 b()是法线贴图或函数。因此,我会为'foo'选择名称“composeFilterWithMap”,或“composeSelectorWithMap”或类似名称。
答案 1 :(得分:1)
我称之为函数合成器或类似的东西
答案 2 :(得分:1)
我会将该功能称为 permuted_values
您所做的相当于使用基于您的密钥的排列来迭代哈希映射。
答案 3 :(得分:0)
协同引擎。
答案 4 :(得分:0)
以下是a,b和foo的示例名称可能会有所帮助(我不喜欢这些,但它们有点像我所得到的):
items_by_key(key) value_by_item(item) values_by_key(items_by_key, value_by_item)