11得票5回答
使用 Ramda 实现的无参风格大写函数

尽管编写一个将单词首字母大写的函数是很容易的,例如: "hello" => "Hello" "hi there" => "Hi there" 但如何使用Ramda JS以点无式样式编写它呢? https://en.wikipedia.org/wiki/Tacit_programming

73得票4回答
"点无关"风格在函数式编程中有哪些优缺点?

我知道在某些语言(比如 Haskell)中,追求的是点自由风格,或者从来不显式地引用函数参数名称。这对我来说是一个非常难以掌握的概念,但它可能有助于我理解该风格的优势(甚至缺点)。是否有人能够解释一下呢?

7得票2回答
能否有人解释一下 ((.)$(.)) (==) 1 (1+) 0 的含义?

我在 Haskell.org 上发现了这个点无风格函数,被称为“the owl”。 ((.)$(.)) 它的类型签名是 (a -> b -> c) -> a -> (a1 -> b) -> a1 -> c。 它等价于 f a b c...

11得票2回答
实现一个函数来统计列表中每个元素的频率

我试图编写一个程序,可以统计列表中每个元素的频率。 In: "aabbcabb" Out: [("a",3),("b",4),("c",1)] 你可以在以下链接中查看我的代码:http://codepad.org/nyIECIT2 在这段代码中,unique函数的输出将如下所示。...

16得票2回答
有没有更好的方式用无点符号表示绝对误差函数?

在点实际符号表示下: absoluteError x y = abs (x-y) 一个不清楚的点无符号示例: absoluteError' = curry (abs . uncurry (-))

13得票4回答
在 point-free 风格中编写简单的 Haskell 函数

我正在尝试理解如何将Haskell中的函数转换为点无关表示法。我看到了这个例子,但它比我想要的更加复杂。我感觉我理解了它背后的逻辑,但当我尝试在代码中执行一些简单的例子时,我遇到了编译错误。我想尝试用点无关风格来编写这个函数: f x = 5 + 8/x,我重新排列为f x = (+) 5 ...

9得票6回答
Python中的无点函数组合

我有一些谓词,例如: is_divisible_by_13 = lambda i: i % 13 == 0 is_palindrome = lambda x: str(x) == str(x)[::-1] 并且想要像下面这样逻辑地将它们组合起来: filter(lambda x: is...

8得票2回答
点无符号表示法,递归和模式匹配

我听说了很多关于点无编程的内容,所以我决定进行一个小实验来测试自己对它的掌握程度。这个实验涉及到将一个指向函数来计算一个数字的阶乘转换为点无形式。我成功地完成了它,但是点无结果比指向结果更难读懂。 -- pointed fact 0 = 1 fact n = n * (fact (n-1))...

7得票3回答
如何推导出这个无点代码的步骤?

我在审查一些代码时发现了以下宝石,我敢打赌这是pointfree输出的复制粘贴: (我认为对于这个特定的问题,下面的内容比通常的foo/bar更合适:P) import Control.Monad (liftM2) data Battleship = Battleship { x ::...

11得票2回答
`ap zip tail`表达式是如何工作的?

我在想如何将f x = zip x (tail x)改写成点-free形式。于是我使用了pointfree程序,得到的结果是f = ap zip tail,其中ap是Control.Monad中的函数。我不理解这个点-free定义是如何工作的。如果可以从类型的角度理解它,我希望我能理解它。im...