【发布时间】:2018-05-17 22:47:21
【问题描述】:
我正在使用 OCaml v 4.00.1。我正在尝试使用相互递归编写一个函数来获取一个列表并返回一个 int。 int 是取列表的交替元素并将它们彼此相加和相减的结果。例如,列表 [1;2;3;4] 将导致 1 + 2 - 3 + 4 = 4。
我的代码如下:
let alt list =
let rec add xs = match xs with
[] -> 0
| x::xs -> x + (sub xs)
and sub xs = match xs with
[] -> 0
| x::xs -> x - (add xs);;
OCaml 在 ;; 上引发语法错误在代码的最后。我不确定从哪里开始弄清楚这个错误到底是什么。
【问题讨论】:
标签: ocaml