MapReduce 在原始函数式语言中的可扩展性如何?
Map-Reduce 编程模型源于映射和化简函数,这些函数早在 Lisp 和Scheme 等函数式语言中就已存在。 我记得在大学(90 年代初)时,我就被告知 Map-Reduc…
用纯函数式语言保持状态
我正在尝试弄清楚如何执行以下操作,假设您正在开发直流电机的控制器,您希望让它以用户设置的特定速度旋转, (def set-point (ref {:sp 90})) (while…
ocaml 该表达式的类型为“a list”,但此处与类型 X(account) 一起使用
有一段 ocaml 可以正常工作 type position = {symbol: string; holding: int; pprice : float; };; type account = {name: string; max_ind_holding:f…
分隔延续和不分隔延续之间的区别
我想delimited和undelimited延续之间的区别就像call和jump之间的区别。 如果我们调用delimited延续,它将在完成后返回给调用者。如果我们调用 undelim…
如何通过隐藏“状态”来编写没有 IO 类型 sig 的 haskell 函数变化
I wrote a function in haskell that takes a few parameters like Word32, String (ignore currying) and outputs IO Word32. Now, this is a functi…
是否有可能构建一个相对较快的无类型 lambda 演算机?
纯无类型 lambda 演算是一个强大的概念。然而,构建一台供现实世界使用的机器或解释器通常被描述为(接近)不可能。我想对此进行调查。理论上是否可以…
haskell - 让/在列表理解中等效吗?
有没有办法在列表理解中使用 let、where 或以其他方式定义子表达式,以便它可以在术语和约束中使用? 根据我的实验,以下工作: [let x = i*i in x | …
模块:函子中的类型问题
我对以下代码中的类型有疑问(一些简单的模块功能图实现)。似乎各类型都过着自己的生活。 我有 type t = NotaEdge | int*v*v 的边在 Edge 模块中实现…
F# 的 monad 实现在可用关键字数量方面是否独特?
我只知道F#。我还没有学过其他的函数式编程语言。我见过的所有关于 monad 的例子都只描述了 bind 和 unit 方法。 F# 有很多关键字(例如 let!、do! 等…