ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

函数式编程语言

2019-02-28 13:01:52  阅读:265  来源: 互联网

标签:函数 编程语言 Lisp 编程 命令式 计算


函数式编程是种编程方式,它将电脑运算视为函数的计算。 函数编程语言最重要的基础是λ演算(lambda calculus),而且λ演算的函数可以接受函数当作输入(参数)和输出(返回值)。  和指令式编程相比,函数式编程强调函数的计算比指令的执行重要。和过程化编程相比,函数式编程里函数的计算可随时调用。  

相比于命令式编程关心解决问题的步骤,函数式编程是面向数学的抽象,关心数据(代数结构)之间的映射关系。

函数式编程将计算描述为一种表达式求值。

在狭义上,函数式编程意味着没有可变变量,赋值,循环和其他的命令式控制结构。即,纯函数式编程语言。

Pure Lisp, XSLT, XPath, XQuery, FP
Haskell (without I/O Monad or UnsafPerformIO)


在广义上,函数式编程意味着专注于函数

Lisp, Scheme, Racket, Clojure

SML, Ocaml, F#

Scala

Smalltalk, Ruby

 

为什么函数式编程语言会流行?

借用比较有代表性的回答

#t#joel.neely :

我觉得,对于函数式编程会流行这一话题没有任何疑问,因为作为一种编程方式,它都用了大约四十年了。面向对象的程序员,每当为了编写干净简洁的代码而使用了不可变对象时( immutable object ) , 这都是借用了函数式编程的概念。

Greg Hewgill :
对我来说,主要的加分处在于它固有的并行操作性,尤其是现在更高频率的CPU正在转变为更多内核。

stbuton :
即使你在工作中从不会用到函数式语言, 理解函数式编程将能够让你成为一一个更优秀的开发人员。总的来讲,对于代码和编程,它将给予你一个新的视角。

 

标签:函数,编程语言,Lisp,编程,命令式,计算
来源: https://www.cnblogs.com/hkhk/p/10449334.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有