Haskell趣学指南


阅读(288.9k) 收藏 (146)

手册简介

本教程主要是面向已经有命令式编程经验(C, C++, Java, Python …) 、却未曾接触过函数式编程 (Haskell, ML, OCaml …)的读者。还没有编程基础?没关系,像你这样的聪明小伙一定能够学会haskell!

手册说明

8ad4b31c8701a18b8b682fcf9e2f07082938feaa

  Haskell是一种标准化的、通用纯函数式编程语言,有非限定性语义和强静态类型。在Haskell中,函数是一等公民。作为函数式编程语言,主要控制结构是函数。Haskell语言是1990年在编程语言Miranda的基础上标准化的,并且以λ演算(Lambda-Calculus)为基础发展而来。具有“证明即程序、结论公式即程序类型”的特征。这也是Haskell语言以希腊字母「λ」(Lambda)作为自己标志的原因。Haskell语言的最主要的执行环境是GHC。

  发展历史

  1990年定义了Haskell的第一个版本(“Haskell 1.0”)。委员会形成了一系列的语言定义(1.0,1.1,1.2,1.3,1.4)。

  1997年底,该系列形成了Haskell 98,旨在定义一个稳定、最小化、可移植的语言版本以及相应的标准库,以用于教学和作为将来扩展的基础。委员会明确欢迎创建各种增加或集成实验性特性的Haskell 98的扩展和变种。

  1999年2月,Haskell 98语言标准公布,名为《The Haskell 98 Report》。

  2003年1月,《Haskell 98 Language and Libraries: The Revised Report》公布。[9] 接着,Glasgow Haskell Compiler(GHC)实现了当时的de facto标准,Haskell快速发展。

  2006年早期,开始了定义Haskell 98标准后续的进程,非正式命名为Haskell Prime。这是个修订语言定义的不断增补的过程,每年产生一个新的修订版。第一个修订版于2009年11月完成、2010年7月发布,称作Haskell 2010。

  Haskell 2010加入了外部函数接口(Foreign Function Interface,FFI),允许绑定到其它编程语言,修正了一些语法问题(在正式语法中的改动)并废除了称为“n加k模式”(换言之,不再支持 fact (n+1) = (n+1) * fact n )。引入了语言级编译选项语法扩展(Language-Pragma-Syntax-Extension),使得在Haskell源代码中可以明确要求一些扩展功能。Haskell 2010引入的这些扩展的名字是DoAndIfThenElse、HierarchicalModules、EmptyDataDeclarations、FixityResolution、ForeignFunctionInterface、LineCommentSyntax、PatternGuards、RelaxedDependencyAnalysis、LanguagePragma、NoNPlusKPatterns。

  其他编程语言

  《php教程

  《go语言教程

  《C#教程

  《c语言教程


在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号