我需要在 ML 中编写一个多态函数,使其签名为:
sig4 = fn : ('a -> 'b -> 'c -> 'a) * ('a -> 'b) -> 'a -> 'c -> 'b -> 'c -> 'a
我目前的版本是:
fun sig4 (f, g) a c b =
if 1 > 2 then g(f(a) b c)
else if 2 > 2 then f(a) b
else g(a);
它产生:
sig4 = fn : ('a -> 'b -> 'c -> 'a) * ('a -> 'c -> 'a) -> 'a -> 'c -> 'b -> 'c - >'一个
提前致谢。