Haskell Lecture 1

Haskell是什么

Haskell是一门程序设计语言, 是一门纯粹的函数式语言。

Haskell的优势是什么

  1. 函数式的典范,是一种与过程式完全不同的思维方式。
  2. 强大的类型系统,可以在编译期就检查出大量的错误。
  3. 强大的安全性,能避免大多数逻辑错误,基本上编译通过就不会有异常,使得程序员很难写出错误的代码。
  4. 代码简短,告诉计算机"做什么"而不是"怎么做", “what is better than how”

为什么我没有听说过Haskell?

  1. 它太不一样了, 与其他语言都不同, 它没有变量,没有典型的循环语句,顺序语句。它是纯函数式的,无状态的。
  2. 学习曲线陡峭。含有难懂的概念, 例如Haskell使用 “单子(Monad)”来处理有状态的操作,例如IO。而单子的定义是“自函子范畴上的幺半群”。不过别担心,本教程将避免引入那些晦涩的数学概念,整个教程努力做到通俗易懂。

对读者的期望

本教程的读者期望是已经有过命令式编程(例如C/C++, Python, Java, C#, Matlab, Rust …etc)经验的,希望学习越来越流行的函数式的同学们。