是否有一个内置函数可以执行以下操作?使用自定义比较函数构建列表的等式?
let rec listsEqual xl yl f =
match xl, yl with
| [], [] -> true
| [], _ | _, [] -> false
| xh::xt, yh::yt -> if f xh yh then listsEqual xt yt f else false
更新,进一步阐述:和一般的有什么办法在挖掘结构性比较,但使用自定义的比较函数?
您是否在寻找Seq.compareWith功能? – Alex 2011-03-29 13:50:17
@Alex - 不完全是,两个问题1)期望两个序列是相同类型的,2)不会短路(我认为)。 – 2011-03-29 14:21:06