我在F#
中定义了这两个函数let f t =
match t with
|_ when t = 0 -> 1
|_ -> g t-1
let g t = 1 + (f t)
但是,F#编译器不接受它。它说
stdin(9,16): error FS0039: The value or constructor 'f' is not defined
请帮帮我!感谢。
答案 0 :(得分:5)
F#支持使用let rec ... and ...
语法进行相互重复。这是你的例子
let rec f t =
match t with
|_ when t = 0 -> 1
|_ -> g t-1
and g t = 1 + (f t)