问题是:我知道我需要解析n
p
次出现,但我也有一个列表xs
,我需要将一个元素传递给{{1}在每个应用程序上。将一个值传递给p
很容易 - p
- 但我不知道列表中需要访问哪个元素。
实现这一目标的最简洁方法是什么?
答案 0 :(得分:1)
我到达的解决方案是:
let rec pmap f xs =
match xs with
| x :: xs -> parse { let! y = f x
let! ys = pmap f xs
return y :: ys }
| [] -> parse { return [] }
然后可以将其用作:
let p x = ...
pmap p xs
仍然希望听到其他想法!