functional-programming 相关问题

函数式编程是一种基于使用函数构建抽象,避免副作用和状态变化的编程范例。纯函数编程是线程安全的。

具有单位类型输出的地图功能

类型 ('a, 'b) t= | 'b 的叶子 | 'a * ('a, 'b) t* ('a, 'b) t 的节点 我想实现一个带有签名的 map f g t 函数:val map: (('a -> unit) * ('b -> unit)) -> (...

回答 1 投票 0

具有单子效果的流类型

是否有 Stream 类型的标准类型(特别是在 stdlib 中)(我指的是潜在的无限惰性序列),它允许在访问下一个元素时产生效果?有点像...

回答 0 投票 0

组合器模式

我对“组合器”模式得到的结果有点问题。 公共接口 CustomerRegistrationValidator 扩展函数 { 静态

回答 2 投票 0

我想知道这种实现是否正确[关闭]

当我尝试返回此验证结果时,vscode 出现问题,我看到视频中代码运行良好的人有所不同。 公共接口 CustomerRegistrationsValidator e ...

回答 0 投票 0

fp-ts TaskEither pipeline 由 Either pipelines 组成

我正在使用 fp-ts 模块 Either 和 TaskEither 编写程序/管道,其中第一步是执行可能会失败的 TaskEither 异步操作(“为 ID 获取文档……

回答 0 投票 0

fp-ts:A.sequenceT的逆运算是什么?

操作 A.sequenceT 允许将类型化 Monad 的序列转换为类型化元组的 Monad,例如在这个 Option 示例中: const sequenceO = A.sequenceT(O.Apply); const o1: 优化...

回答 0 投票 0

如何找到最左边的叶子然后将拉链聚焦在那里

从一棵二叉树,我想构造一个拉链,重点放在最左边的叶子上。 输入('a,'b)bin_tree = | 'b 的叶子 | 'a * ('a, 'b) bin_tree * ('a, 'b) bin_tree 的节点 输入...

回答 0 投票 0

如何在Racket语法中使用arbno,最后一项没有公共分隔符

我正在写一个函数,在 Racket 中称为“func”,#eopl。我对语法感到困惑。我们对具有公共分隔符的元素使用 arbno,这样我们就可以将它们视为列表元素。怎么...

回答 0 投票 0

在另一列上有条件地分配一列函数

请注意,在这个问题中我想要一列函数,因此它不是更常见的问题“如何使用函数创建新列?”的重复。 我将用一个简单的

回答 1 投票 0

是否优化了任何 JavaScript 引擎尾调用 (TCO)? [重复]

我有一个用 JavaScript 实现的尾递归寻路算法,想知道是否有任何(全部?)浏览器可能会出现堆栈溢出异常。

回答 6 投票 0

在 C# 中使用 Y 组合器

我正在尝试弄清楚如何在一行中编写递归函数(例如阶乘,尽管我的函数要复杂得多)。为此,我想到了使用 Lambda 微积分的 Y 组合...

回答 1 投票 0

Stream Monad:绑定和零返回

给定这个流 monad 作为解决方案: 模块 StMonad = 结构 输入 'a stream = Nil | 'a * ( unit -> 'a stream) 的缺点 让 return v = Cons(v, fun() -> Nil) 让 rec 绑定 v f = 马特...

回答 0 投票 0

如何动态分配函数签名?

我想创建一个装饰器,用于为装饰函数动态分配函数签名,如下所示: 进口检验 signature = inspect.Signature([ 检查.Parameter('...

回答 2 投票 0

在函数式编程中使用柯里化/柯里化函数有什么好处?

如果您将 inner_multiply 视为 multiply 的初始值设定项,您是否应该让它们松散耦合并 DI 初始值设定项(或任何其他方式),特别是如果您需要多个初始值设定项?或者...

回答 2 投票 0

在函数式编程中使用柯里化函数有什么好处?

如果您将 inner_multiply 视为 multiply 的初始值设定项,您是否应该让它们松散耦合并 DI 初始值设定项(或任何其他方式),特别是如果您需要多个初始值设定项。还是我

回答 1 投票 0

在 Ruby 中使用关键字参数柯里化过程

假设我有一个通用的 Proc、Lambda 或方法,它带有一个可选的第二个参数: pow = -> (base, exp: 2) { base**exp } 现在我想柯里化这个函数,给它一个 exp 3。 立方体 = pow...

回答 4 投票 0

证明单子第一定律

鉴于: 模块 FunMonad = 结构 输入 'a t = (unit -> 'a) 让 return x = fun () -> x 让绑定 m f = fun () -> ((f (m ())) ()) (* 解释为什么不:让绑定 m f = f (m ()) *) 让 (&...

回答 0 投票 0

用 None 证明 monad 选项?

给定这个选项monad: 模块 OptMonad = 结构 输入'a t = '一个选项 让返回 v = 一些 v 让绑定 m f = 将 m 与 |一些 v -> f v (***) |无 -> 非...

回答 1 投票 0

Haskell:需要帮助来调试一个简单的命令行解释器

我的解释器支持以下操作: 向上(增加 y 坐标), 向下(减少 y 坐标), 左(减少 x 坐标), 右(增加 x 坐标), 原则...

回答 0 投票 0

如何将匿名类实现转换为lambda风格?

我正在尝试将 promotion2Plus1Anon 替换为 promotion2Plus1Lambda(Lambda Scala 样式),但不幸的是它抛出了异常“前向引用扩展了值 myFormula 的定义&

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.