小编典典

为什么选择函数式语言?

all

我在这里看到很多关于函数式语言和东西的讨论。为什么要使用“传统”语言而不是“传统”语言?他们在哪些方面做得更好?他们最差的是什么?什么是理想的函数式编程应用程序?


阅读 101

收藏
2022-04-04

共1个答案

小编典典

函数式语言使用与命令式和面向对象语言不同的范式。他们使用无副作用函数作为语言的基本构建块。这可以实现很多事情并使很多事情变得更加困难(或者在大多数情况下与人们习惯的不同)。

函数式编程的最大优势之一是无副作用函数的执行顺序并不重要。例如,在 Erlang
中,这用于以非常透明的方式启用并发。而且由于函数式语言中的函数的行为与数学函数非常相似,因此很容易将它们翻译成函数式语言。在某些情况下,这可以使代码更具可读性。

传统上,函数式编程的一大缺点也是没有副作用。没有 IO 很难写出有用的软件,但没有函数副作用的 IO
很难实现。因此,大多数人从函数式编程中获得的不仅仅是从单个输入计算单个输出。在 F# 或 Scala 等现代混合范式语言中,这更容易。

许多现代语言都有来自函数式编程语言的元素。C# 3.0 有很多函数式编程特性,你也可以在 Python
中进行函数式编程。我认为函数式编程流行的原因主要有两个原因:并发正在成为普通编程中的一个真正问题,因为我们越来越多的多处理器计算机;并且语言变得越来越容易使用。

2022-04-04