将记录转换为列表

Convert record to list

假设

type pair_int = {l1:int; l2:int, ..., ln:int}
let test = {l1=2; l2=4, ..., ln=71}

我以为我可以做类似 map (fun (x,y) -> y) test 的事情,但它不起作用

如何从 test 中获取列表 [2,4, ..., 71]

在 OCaml 类型系统中没有很好的方法可以做到这一点。您不能映射记录的字段,因为它们可以是所有不同的类型。您的类型 pair_int 看起来很像列表或数组。字段名不添加任何语义内容,字段都是同一类型。您可能会考虑只使用列表或数组。