关于Function Language(函数式语言是什么?包含哪些语言?为什么函数式语言流行?)

时间:2022-06-12 12:19:00

1.What?

Function Language是一种非冯诺依曼式的程序设计语言。函数式语言的主要成分是原始函数、定义函数和函数型。

这种语言具有较强的组织数据结构的能力,可以把某一数据结构(如数组)作为单一处理;可以把函数作为参数,其结果也可以为函数,这种定义的函数称为高阶函数,程序就是函数,程序作用在结构型数据上,产生结构型结果,从根本上改变了冯诺依曼语言的“逐词”工作方式。

2.Including?

Haskell:1980年代末期发布,Haskell函数式编程语言实在Miranda的基础上得到,它对Miranda进行了标准化,所以这种语言集合了其它相关函数式编程开发的原理,它无需花费太多的赘述就能完成一些数据结构,比如链表和矩阵,是当前最广泛地被用于研究的一种函数式编程语言。与此同时,它还被用作与在新语言设计时的标准模板。

Clean:它和Haskell有很多相同的地方。目前这门语言是用C写的。

Meta Language:被归类于非纯函数式语言,因为它允许了副作用和指令式编程的使用。

F#:这是一款针对.NET平台的开放研究的语言。

3.Why popular?

(1)函数式编程语言的代码十分简单,加快了开发的速度。

(2)使用函数式语言时,会大量使用到函数,从而减少了重复的代码,程序比较短。

(3)函数式语言更加接近于自然语言,程序员在学习它时更加快捷容易。

(4)函数式语言管理更加方便。

(5)函数式语言不会对外部产生依赖,也不会修改外界的状态。程序员只需要把指定的参数给函数,相同的参数返回的结果必定是相同的。

(6)函数式语言还支持并发编程,这就使程序员在开发时不必考录死锁的问题,因为它根本就不修改变量,所以就不存在锁线程的问题。

(7)函数式语言支持代码热升级。