博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
函数式编程语言
阅读量:5283 次
发布时间:2019-06-14

本文共 789 字,大约阅读时间需要 2 分钟。

函数式编程是种编程方式,它将电脑运算视为函数的计算。
函数编程语言最重要的基础是λ演算(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 :

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

 

转载于:https://www.cnblogs.com/hkhk/p/10449334.html

你可能感兴趣的文章
css & input type & search icon
查看>>
C# 强制关闭当前程序进程(完全Kill掉不留痕迹)
查看>>
语音识别中的MFCC的提取原理和MATLAB实现
查看>>
MetaWeblog API Test
查看>>
c# 文件笔记
查看>>
类和结构
查看>>
心得25--JDK新特性9-泛型1-加深介绍
查看>>
安装NVIDIA驱动时禁用自带nouveau驱动
查看>>
HDU-1255 覆盖的面积 (扫描线)
查看>>
Java 中 静态方法与非静态方法的区别
查看>>
Jenkins+ProGet+Windows Batch搭建全自动的内部包(NuGet)打包和推送及管理平台
查看>>
线程池的概念
查看>>
Java 序列化
查看>>
Java 时间处理实例
查看>>
Java 多线程编程
查看>>
Java 数组实例
查看>>
mysql启动过程
查看>>
2017前端面试题总结
查看>>
SWIFT国际资金清算系统
查看>>
站立会议第四天
查看>>