在为我的编程语言考试复习时,标准 ML 部分有一些类型推断问题,我可以通过在脑海中进行类型推断来完成大部分问题,而且我很擅长,但是有一个问题让我难过。
我必须编写一个类型的函数:
('a -> ('b -> 'c)) -> ('a -> 'b) -> ('a -> 'c)
因此,在我的脑海中,我应该有一个带有两个参数的函数,即函数 f 和 g。两者都需要一个参数 x,但我不能将该参数 x 添加到这个函数中,因为它只需要两个参数,所以我只能使用 o 运算符创建这个函数,用于管道函数。
所以 f 接受一个参数并返回一个函数 g 接受一个参数并返回一个值。然后整个函数接受一个值并返回一个值。
我不确定如何仅使用 o 运算符来应用 f 和 g 来暗示这些规则。
任何帮助将不胜感激:) 谢谢,Ciaran