【发布时间】:2020-05-23 16:08:41
【问题描述】:
您好,我正在尝试做这个练习,但不太明白。我在 F# 中得到以下代码
type A<’a> = | D of ’a * bool
| E of A<’a> * A<’a>
let rec g acc x = match x with
| E(y,z) -> g (g acc z) y
| D(a,true) -> a::acc
| _ -> acc;;
let h x = g [] x;;
现在的练习是讨论 g 是否是尾递归函数,并提供 g 和 h 的基于延续的尾递归变体的声明。 希望有人能帮忙!
【问题讨论】:
标签: f# f#-interactive