什么是函数式语言?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是函数式语言?相关的知识,希望对你有一定的参考价值。

参考技术A 函数式语言(functional language)一类程序设计语言.是一种非冯·诺伊曼式的程序设计语言.函数式语言主要成分是原始函数、定义函数和函数型.这种语言具有较强的组织数据结构的能力,可以把某一数据结构(如数组)作为单一值处理;可以把函数作为参数,其结果也可为函数,这种定义的函数称为高阶函数.程序就是函数,程序作用在结构型数据上,产生结构型结果,从根本上改变了冯·诺伊曼式语言的“逐词”工作方式.
函数式语言具有简明性和独特的表达能力,因此可用它来研究传统程序设计语言的语义.巴科斯<Backus,J.)分析了传统程序设计语言的缺陷,认为这些缺陷主要是采用冯·诺伊曼式系统结构所造成的.巴科斯提出的函数式程序设计系统FP摆脱了传统的冯·诺伊曼计算机结构,因此,需要一种新型的非冯·诺伊曼式的系统结构为后援.

为什么函数式语言会火

一.首先什么是函数式语言:

个人认为函数式语言就是函数式编程中使用的程序设计语言,函数式语言有两个特点:1.函数是头等值,是“头等公民”,即函数的使用是不受限制的。2.函数把输入值映射成输出值,给定输入,固定的输出,且没有副作用。

二.函数式语言包括:

最早的函数式语言当然是Lisp,现在有两个分支:Common lisp 和Scheme。Common lisp 是一个庞大的语言,支持多种编程范式,Scheme是Common lisp的子集,二者都是ANSI标准。Scheme 由于语言核心很小,多用在教育领域,Common Lisp多用来写专家系统,也可以构造大型软件。最纯的函数式语言是Haskell,完全没有副作用,有一个Hakell98标准,但还不是ANSI或ISO标准。

为什么如python/javascrip这些语言不是函数式语言呢,因为他们不具备函数式语言的特点2。

三.为什么函数式语言会火:

总结为两个字:便捷。

将运算过程尽量写成一系列嵌套的函数调用。

 

以上是关于什么是函数式语言?的主要内容,如果未能解决你的问题,请参考以下文章

什么是函数式语言中的“模式匹配”?

编程语言共性之------什么是函数式编程?

函数式语言

为什么纯函数式语言至今无法流行起来?

对函数式编程语言的理解

函数式编程语言