fsharp 中的函数合并/组合器
我有一个函数列表,接受相同类型作为输入,不同类型作为输出 [ f_i : Mytype -> res:Sometype_i ] 哪个操作可以将它们合并到以下类型的一个函数中? f…
所提出的案例是否可以优化为一个循环?
假设我有两个函数 f :: [a] -> b 和 g :: [a] -> c.我有以下两个问题: 如果我执行 (f &&& g) xs where xs :: [a],并且如果都 f和g涉及循环,编译器…
Lambda演算表达式实现函数应用
我刚刚找到了以下 lambda 演算表达式: (((λ f . (λ x . (f x))) (λ a . a)) (λ b . b)) 因此,这是一个接受参数 f 并返回另一个函数的函数,该函…
以 pointfree 风格编写函数的一般方案是什么?
我现在正在做20个中级Haskell练习,这是一个非常有趣的练习。它涉及实现类型类 Functor 和 Monad 的各种实例(以及将 Functor 和 Monad 作为参数的函…
是否存在“类型级组合器”?它们会在未来存在吗?
在我看来,haskell 真正好用的大部分原因是组合器,例如 (.)、flip、$ 等等。感觉就像我可以在需要时创建新语法。 不久前,我正在做一些事情,如果我…
在 JavaScript 中用 SKI 组合器表达 Y
我正在摆弄 JavaScript 中的组合器,并为(希望)让 S 工作而感到自豪,当时我偶然发现维基百科说:“Y 组合器可以在 SKI 演算中表示为:Y = S (K (SI…
memcpy 问题;复制错误的块并多次
#include #include using namespace std; int sk00(char * a) //use to find length, in characters, of an expression { int b = 1, c = 0; while(b …
在 Haskell 中对布尔函数执行“and”和“or”
我刚刚编写了以下两个函数: fand :: (a -> Bool) -> (a -> Bool) -> a -> Bool fand f1 f2 x = (f1 x) && (f2 x) f_or :: (a -> Bool) -> (a -> Bool…