函数式编程语言时代已经来临
极客时间编辑部
讲述:杜力大小:1.12M时长:02:28
英国著名计算机科学家、微软首席研究员及 Haskell 编程语言主要贡献者西蒙·佩顿·琼斯(Simon Peyton Jones)在一次访谈中说道,函数式编程语言的时代已经来临。
函数式编程语言不同于大多数人所熟知的编程范式,它没有了维护全局状态的麻烦,只需要将输入数据传给函数,然后等待输出结果,就这么简单。
西蒙解释道,大部分编程语言都是命令式(imperative)的,程序员需要告诉代码先做什么再做什么。而函数式编程语言则不然,它会直接告诉程序员输出的结果是什么。比如 Excel 表格里的方程式,它并不包含一系列的步骤,它只会告诉用户某个格子经过计算之后得出的值是多少。
西蒙认为,函数式编程语言是开发者验证新想法的有力工具,比如 Haskell。在他看来,函数式编程语言有一颗智慧的心,它易于驾驭,只要开发者善于驾驭它,它就能助其一臂之力。
在过去几年,函数式编程语言的很多语言特性已经被其他编程语言所模仿,而这个领域中的新想法也如雨后春笋般不断涌现。Haskell 和 OCaml 几乎成为新想法的摇篮,它们当中有一些已经成为主流编程语言的一部分,垃圾回收和参数化多态就是其中最好的例子。Java 的泛型是在 2000 年初引入的,但它在函数式编程语言中早已存在了 20 年。Linq 的设计思想直接来自 Haskell,F# 的 workflow 设计灵感则来自 Haskell 的 monadic I/O story。
随着摩尔定律的放缓,计算机用户开始更多地依赖软件能够并行地运行于多个核芯片之上,以此来获得更快的处理速度。毫无疑问,函数式编程语言特别适合用于并行执行,因为它们很少有机会发生崩溃。
西蒙指出,在使用函数式编程语言时,可以通过避免运算单元之间发生交互来实现并行运算。这就要求程序员对程序各个部分之间的交互细节了如指掌,从而降低 bug 出现的几率。
函数式编程语言的市场仍然相对较小,但毕竟已经存在了 27 年,它们的用户群还是很强大的。很多公司也开始使用函数式编程语言,比如,Facebook 就在使用 Haskell 进行垃圾过滤。
最后,西蒙表示,编写软件最主要的一方面就是要管理好复杂性,而唯一能够阻碍写出好软件的就是人们管理复杂性的能力。函数式编程语言为开发者提供了最有力的工具用于管理复杂性,这是命令式编程语言无法比拟的。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论