zoukankan      html  css  js  c++  java
  • 函数式编程的形式—函数与参量、类型的关系—类型到类型间的映射

    函数式编程的基本特征之一就是 类型到类型之间的映射;

    (T item) => (Y item)

    (A, B, C) =>D

    map(array<T> , (T item) => (Y item)) => array<Y>

    moand[array<T>>]map((T item) => (Y item)) => moand[array<Y>>]

    一、非monad类型函数

    map(array<T> , (T item) => (Y item)) => array<Y>

    函数所依赖的所有环境变量全部由参量传入;

    所有的环境变量(多个参数)打包成一个类型(准monad类型),作为输入类型,函数的输出作为输出类型。

    需要处理的主数据为准monad类型的主类型;

    monad化的含义就是将主类型用其它环境变量进行包装,封装成结构体的过程;

    二、monad类型函数

    map(array<T> , (T item) => (Y item)) => array<Y>

    1、将环境变量中的数据类型信息打包正一个结构体;

    2、主体函数和参量中的函数参量打包成高阶函数;

    将两者合并为一个monand类型;

    3、将高阶函数的输出提升为monand;

    As such, monads have been described as "programmable semicolons"; a semicolon is the operator used to chain together individual statements in many imperative programming languages,[2] thus the expression implies that extra code will be executed between the actions in the pipeline.

    https://www.cnblogs.com/feng9exe/p/10510884.html

    三、函数式编程本质上是对包含函数参量的函数的输入、输出进行类型变化的过程;

    变换后的结果更容易进行组装;

    输入类型—》输出类型

    多个输入类型打包—moand化

  • 相关阅读:
    storcli64 查看raid
    初学者路径规划 | 人生苦短我用Python
    Vue.js组件的重要选项
    三个Bootstrap免费字体和图标库
    前端实时消息提示的效果-websocket长轮询
    前端实时消息提示的效果-websocket长轮询
    带分页的标签
    带分页的标签
    VMware-workstation安装
    VMware-workstation安装
  • 原文地址:https://www.cnblogs.com/feng9exe/p/11016876.html
Copyright © 2011-2022 走看看