computation-expression

computation-expression

文章 0 浏览 2

我该如何构建递归计算表达式生成器

我想做的是有一个函数,我可以重复地将转换函数传递到其中并接收组合转换,转换函数的形式为 'a ->; 'b 即不是像这样组成一个固定的工作流程: let in…

花开雨落又逢春i 2024-11-15 04:48:14 2 0

如何更改 Rx Builder 实现来修复堆栈溢出异常?

我正在尝试提出一个 Rx Builder,以在 F# 计算表达式语法中使用反应式扩展。我该如何修复它,以免堆栈崩溃?就像下面的 Seq 例子一样。 是否有计划提…

望笑 2024-11-10 09:30:05 2 0

重试 F# 中的计算表达式或其他构造

我希望能够在 F# 中编写一个计算表达式,以便在抛出异常时能够重试操作。现在我的代码如下所示: let x = retry (fun() -> GetResourceX()) let y = r…

忘年祭陌 2024-11-06 18:08:37 2 0

有没有办法对 do! 进行不同的实现?让!在计算表达式中?

我需要不同的行为来做!让!在我的自定义计算表达式中。 我尝试通过以下方式实现此目的: type FooBuilder() = class member b.Bind(x:'T, f:unit->'U…

浮光之海 2024-10-30 18:26:57 5 0

如何最好地抓住失踪的let!、do!、return和return!在 F# 的计算表达式中

我喜欢计算表达式,但我会犯一些简单的错误,例如忘记 return 关键字或 !诸如 let! 之类的表达式然后返回!,或者我只是忘记写 do!。这种情况在状态…

美羊羊 2024-10-06 11:01:47 4 0

计算工作流程问题

尝试遵循专家 f# 书中的示例,并且工作流程出现问题...代码如下: type Attempt = option let succeed x = Some (x) let fail = None let bind p rest…

空城之時有危險 2024-10-02 19:32:44 5 0

如何将 `where T : U` 泛型类型参数约束从 C# 转换为 F#?

F# 的类型推断规则给我带来了一些麻烦。我正在编写一个简单的计算生成器,但无法正确获得通用类型变量约束。 我想要的代码在 C# 中如下所示: class F…

一枫情书 2024-10-01 18:21:55 8 0

递归计算表达式

在上一个问题中,我被告知如何重写我的计算表达式,以便它使用尾递归。我重写了代码,但仍然遇到 StackOverflowException。为了找到问题,我使用状态 …

情话已封尘 2024-09-09 04:49:45 13 0

如何创建支持单步执行等功能的 F# 工作流程?

我想创建一个构建器来构建表达式,该表达式在每个步骤后返回类似于延续的内容。 像这样: module TwoSteps = let x = stepwise { let! y = "foo" prin…

罪歌 2024-08-17 21:19:06 6 0

F# 中的自定义计算表达式

我一直在玩弄 F# 中的 monad(又名计算表达式),并且编写了这个简单的 Identity monad: type Identity = | Identity of 'a type IdentityBuilder() …

戈亓 2024-08-15 02:03:13 8 0

为什么这个 F# 计算表达式会发出警告?

此代码: type Result = Success of string type Tracer() = member x.Bind(p: Result, rest: (string -> Result)) = match p with | Success s -> re…

猫腻 2024-08-12 03:07:34 9 0
更多

推荐作者

離殇

文章 0 评论 0

小姐丶请自重

文章 0 评论 0

Aik

文章 0 评论 0

国产ˉ祖宗

文章 0 评论 0

猥琐帝

文章 0 评论 0

半仙

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文