函数式编程 编辑
函数式编程,或称函数程序设计、泛函编程,是一种编程范式,它将电脑运算视为函数运算,并且避免使用程式状态以及易变物件。其中,Λ演算为该语言最重要的基础。而且,λ演算的函数可以接受函数作为输入参数和输出返回值。
1
相关
Scala是一门多范式的编程语言,设计初衷是要整合面向对象编程和函数式编程的各种特性。
编程范型、编程范式或程式设计法,是指软件工程中的一类典型的编程风格。常见的编程范型有:函数式编程、指令式编程、过程式编程、面向对象编程等等。
Standard ML,是一个函数式编程、指令式编程、模块化编程的通用编程语言的编程语言,具有类型系统和类型推论。它流行于编译器作者和编程语言研究者和自动定理证明研究者之中。
编程范型、编程范式或程式设计法,是指软件工程中的一类典型的编程风格。常见的编程范型有:函数式编程、指令式编程、过程式编程、面向对象编程等等。
函数式编程中,单子是一种抽象,它允许以泛型编程方式构造程序。支持它的语言可以使用单子来抽象出程序逻辑需要的样板代码。为了达成这个目标,单子提供它们自己的数据类型,它表示一种特殊形式计算,与之在一起的有两个子程序,一个过程用来包装单子内“任何”基本类型的值,另一个过程用来复合那些输出单子值的函数。
函数式编程中,折叠,也称为归约、积累、聚集、压缩或注入,指称一组高阶函数,它们分析递归数据类型数据结构并通过使用给定组合运算,将递归的处理它的构成部件、建造一个返回值的结果重组起来。典型的,要向折叠提供一个组合子程序,一个数据结构的顶端节点,和可能的在特定条件下使用的某些缺省值。折叠接着以系统性方式使用这个函数,进行组合这个数据结构的层级中的元素。
函数式编程中,函子是受到范畴论函子启发的一种设计模式,它允许泛型编程在内部应用一个函数而不改变泛化类型的结构。函子形成了更复杂的抽象如应用式函子、单子、单子的基础。
函数式逻辑编程,是在一个单一的编程语言中,组合函数式编程和逻辑编程两种编程范式。这种编程风格已经体现在多种编程语言中,包括Curry、Mercury和Oz等。
强函数式编程,与之相对的是普通的或者说弱函数式编程。是一种程序设计范式,它将程序的范围限制为判定器。
在计算机科学中,函数级编程,指称John Backus在他的将程序作为数学对象来研讨的著作中标识出的两种对立编程范型之一,另一种是值级编程。在Backus研究并出版他自己的函数级风格编程之时,他的提议在很大程度上被误解为支持传统的函数式编程