我正在学习 Ocaml,很难理解如何使用第一个函数作为另一个函数的参数。
例如,我创建了一个更大的函数
# let bigger (a,b) = match (a,b) with
(a,b) -> if a > b then true else false;;
val bigger : 'a * 'a -> bool = <fun>
# bigger (2,3);;
- : bool = false
# bigger (3,2);;
- : bool = true
现在我正在努力将此函数用作函数 sortPair 中的参数 - 它对两个元素进行排序: - 如果更大 = true 则(a,b) - 如果更大 = 假则(b,a)
我确信这是一个非常简单的解决方案,但我真的很想在继续之前了解这个基本问题。
这是我尝试过的:
# let sortPair (a,b) = match (a,b) with
bigger (a,b) -> if true then (a,b) else (b,a);;