1

可能重复:
函数式编程中“无点”风格的优点和缺点是什么?

当我在大学时,我不得不学习haskell。在我的一堂课中,我们学习了如何使用无点函数。除了学术观点之外,无点编程还有什么优势吗?

在效率方面有什么区别吗?在有很多代码行的应用程序中,自由点不是更难理解吗?

4

2 回答 2

12

一旦你习惯了它,它就会更清晰,更干净,只要你不要太过分。

可能((not.).)不像\f x y = not (f x y)你那么清楚,但是

munge = this . that . other

应该比

munge x = this (that (other x)))

你的讲师教你pointfree让你成为一个更好的程序员,而不是因为最好混淆你的代码,所以你应该在有帮助的时候使用它。

动机不是效率,而是思想、目的和表达的清晰性。

于 2012-11-13T22:24:49.243 回答
7

阅读起来可能更容易,也可能更难。因此,它可能会对代码的可维护性产生影响,具体取决于您如何使用它。它不会对性能产生影响(除非在非常不寻常的情况下)。

这只是另一个成语。

于 2012-11-13T22:13:56.033 回答