如何在SML中推导函数类型(fun-foo f=f 5;)
我有一个foo函数,定义如下如何在SML中推导函数类型(fun-foo f=f 5;),sml,Sml,我有一个foo函数,定义如下 fun foo f = f 5; 如何推导函数类型?我们可以看到f必须是一个函数。我们还看到,f接受一个整数作为输入,因为我们调用f5。因此f必须具有类型int->'a foo然后获取一个int->'a,并生成一个'a,生成:foo:(int->'a)->'aSML使用此算法的一个变体进行类型推断:
fun foo f = f 5;
如何推导函数类型?我们可以看到
f
必须是一个函数。我们还看到,f接受一个整数作为输入,因为我们调用f5
。因此f
必须具有类型int->'a
foo
然后获取一个int->'a
,并生成一个'a
,生成:foo:(int->'a)->'a
SML使用此算法的一个变体进行类型推断: