美文网首页
初学函数式编程

初学函数式编程

作者: jeavenwong | 来源:发表于2019-12-31 10:05 被阅读0次

高阶函数(Higher-Order Function):高阶函数就是把函数作为参数的函数。

柯里化(Currying):一个多参数的函数可以将其转化为多个单参数的函数的嵌套的过程(或者说是用匿名单参数函数实现多参数的方法的过程),如果只输入一个参数返回的仍然是一个函数,可以实现偏函数应用。

偏函数应用(Partial Application):一个函数有多个参数但是可以固定一个参数将其变成一个新的函数,可以理解成是函数柯里化的应用。

纯函数(Pure Function):相同参数一定有相同的输出,这样的函数就是纯的。比如strlen函数。

非纯函数(Impure Function):相同的参数不一定有相同的输出,这样的函数就是非纯函数。比如malloc函数。

懒惰求值(Laziness):函数的参数在函数调用前就进行参数求值,比如1/0就出现异常。

非懒惰求值(Strictness ):函数的参数在函数使用的时候才开始求值,比如1/0这个参数在函数使用前不会报错。

装箱(Boxed):基本数据类型对应的引用类型就是装箱类型,和基本类型的功能一样,但是是分配在堆上的。

拆箱(Unboxed):引用类型变量对应的基本类型变量就是拆箱类型,功能都一样。

学习参考:

https://ocaml.org/learn/tutorials/functional_programming.html

相关文章

  • 初学函数式编程

    高阶函数(Higher-Order Function):高阶函数就是把函数作为参数的函数。 柯里化(Curryin...

  • RxSwift初探(1)

    一、前提:函数响应式编程思想 简单来说 函数响应式编程 = 函数式编程 + 响应式编程 (1)函数式 函数式编程是...

  • iOS 函数编程 & 链式编程

    函数式(链式)编程 函数式编程概念 函数式编程是种编程范式 函数式编程 Functional Programmin...

  • 函数式编程(一)—— 前置知识

    为什么要学函数式编程? 什么是函数式编程?函数式编程和面向对象编程的不同对于函数式编程思维方式的理解: 函数式编程...

  • 二十二、函数式编程、面向协议式编程

    函数式编程(Functional Prigramming) 函数式编程 函数式编程(Functional Prig...

  • [导图]学习 JavaScript 函数式编程

    近一周的时间,除了工作之外,基本都在看函数式编程的内容。对于初学函数式编程来说,最大的困难莫过于各种概念的理解,以...

  • Python中的函数式编程

    函数式编程 说到函数式编程,我们的重点在于为什么要采用函数式编程,而不是什么是函数式编程。 函数式编程的优点:一、...

  • RxSwift-初探

    函数响应式编程 一:函数式 函数式编程简称FP(Functional Programming),函数式编程就是一种...

  • 《Kotlin入门实战》CH5 | 函数与函数式编程

    函数与函数式编程 函数式编程与命令式编程最大的不同是:函数式编程的焦点在于数据的映射,命令式编程(imperati...

  • 函数响应式编程思想 & RxSwift 核心逻辑(一)

    函数响应式编程思想 函数响应式编程思想即是将函数式编程和响应式编程相结合。 函数式编程 顾名思义,就是像函数一样的...

网友评论

      本文标题:初学函数式编程

      本文链接:https://www.haomeiwen.com/subject/bbcboctx.html