小编car*_*ord的帖子

Ocaml:元组列表上的递归

我有下面的函数表,其中包含一个元组列表(x是字符串,y是字符串列表),我想返回一个元组x1和列表y1的长度。我用这个简单的功能试了一下:

let rec table lst = function
    | [] -> []
    | [(x1, y1, x2, y2)] -> [(x1, (List.length y1))]
    | (x1_h, y1_h, x2_h, y2_h) :: tail -> (x1_h, (List.length y1_h))::(table tail)
Run Code Online (Sandbox Code Playgroud)

但是发生了以下错误:

错误:此表达式的类型为('a *'b list *'c *'d)list->('a * int)list,但是期望表达式为('a * int)list类型

我不确定自己在哪里做错了。

recursion ocaml functional-programming

2
推荐指数
1
解决办法
62
查看次数

标签 统计

functional-programming ×1

ocaml ×1

recursion ×1