一句话阐述Haskell基本概念---个人翻译

一句话阐述Haskell 概念


简介

在许多年拖拖拉拉并且在一些伙伴的帮助下我学习了Haskell。许多Haskell概念使人气馁,所以我决定写一句话简要概括这些概念。这些无论如何不能算得上是完整但是对于get关键点很有用。这些东西从 hemanth/functional-programming-jargon和Standardized Ladder of Functional Programming.获得了启发。

概念

monad:单孢子,由三个函数构成,并且将控制流编码,使得纯函数更加紧密。
monad:是一种类型,为结合数据而生单操作符。
Free monad:允许函子的装换到monads。
recursive function:递归函数。
monad transformer:monad变形器,使得你能在一个函数中使用多于一个的monad。
Lift:是个使用fmap的在函子上的操作,其能操作包含在函子里的数据。
Optics(lens and prisms):光学透镜,允许你在数据类型中查和改。
Currying:柯里使用局部应用,为了返回一个函数直到所有参数都使用了。
Map:map请求了一个函数,对一个列表中所有元素进行操作。
predicate:是个函数,返回True或是False。
Filter:过滤,申请了一个predicate应用到一个列表上,使之只返回值是True的元素。
pure function:纯函数,对于同样的输入总是返回同样的输出。
lambda:一个lambda是一个未命名函数。
Lazy evaluation:惰性计算,直到你的程序确确实实使用时才执行表达式。
Fold:折叠,在列表元素之间申请一个函数。
Morphism:同态,映射,是个从一个对象到另一个对象的转化。
category:范畴,是一个对象、映射或是映射配置的集合。
Types:类型,是每个Haskell表达式内在的东西。
Type classes:类型类,类似于面向对象的接口。
Algebraic data types:算术数据类型,是一种描述类型结构的方法。
Parametric polymorphism:参数多型,允许一般类型变量。在函数的类型标志的类型中。
fmap可以从context里提取出value,计算,再将计算出的值放回context。
functors:函子是对象,可以被fmap操作的对象。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值