在功能组合g compose f
中,使用什么术语来指代和区分传递给组合运算符{{的功能参数f
和g
的 ordering 属性1}}?例如,给定以下组成
compose
什么术语使显式val reverse = (s: String) => s.reverse
val dropThree = (s: String) => s.drop(3)
(reverse compose dropThree)("Make it so!") // ==> !os ti e: java.lang.String
(dropThree compose reverse)("Make it so!") // ==> ti ekaM: java.lang.String
出现在
reverse
首先进入
reverse compose dropThree
在Math SE,他们似乎认为这种精确的术语还没有出现
但是,在软件工程世界中,合成,链接,流水线等似乎无处不在,并且是函数式编程的头条新闻,因此应该存在精确的术语来表征组成中涉及的操作数的关键排序特性。...我的目标是进行除法或减法类比:您可能会因为 例如,将外部函数称为 composer ,将内部函数称为 组成。据我所知,这种词不是常用的, 也许是因为对他们的需求没有像对 基本的算术运算。
请注意,问题后面的术语专门指组成的特定论点,而不是整个表达式,类似于除数和股息,它们精确地描述了除法中的哪个
答案 0 :(得分:1)
我认为没有正式的术语,但是我将a ∘ b
(λx.a(b(x))
)表示为
a
和b
的组成
由a
组成的b
a
组成b
a
链接到b
a
之后b
b
之前a
x
通过b
和a
的流水线关于compose
函数的参数指定,我想您还剩下Math.SE答案了。