我在标准库中找不到choice
允许我编写的对象
let safeDiv (numer : Choice<Exception, int>) (denom : Choice<Exception, int>) =
choice {
let! n = numer
let! d = denom
return! if d = 0
then Choice1Of2 (new DivideByZeroException())
else Choice2Of2 (n / d)
}
就像在 Haskell 中一样。我是否遗漏了什么,或者是否有第三方库可以编写这类东西,或者我必须重新发明这个轮子?