我对 OCaml 很陌生,正在尝试将 StringMap 转换为 OCaml 中的 List。
该地图是从之前的列表中生成的。
let map = List.fold_left(<SOME CODE HERE, WHICH I AM OMITTING>
) StringMap.empty
in StringMap.fold(fun w c newlist -> (c,w)::newlist) map[]
上面代码的最后一行给了我以下错误: This expression has type StringMap.key list -> int StringMap.t but an expression is expected to type 'a StringMap.t = 'a Map.Make(String).t
请注意:此代码输入到 ocamllex 文件 (.mll) 中,当我尝试执行生成的词法分析器 (.ml) 文件时出现此错误。
为什么我会收到此错误?如何让我的代码工作?
谢谢!