电脑:编程语言:haskell
特点
~~~~~~~~
* 继承自ml语言。
* 由一个委员会来设计这个语言,并且发布标准。有多个编译器和解释器。
* 是纯函数语言。
* 惰性求值。
* 能够定义象“1、2、3”这样的基本数值。叫做数据类型定义。
* 用单目(也译作单子)来封装有副作用的函数。同时,不使用抛出错误信息的方式来提示错误,而是出现了错误也会有一个最终结果。
* 静态编译语言。
* 属于学术语言。
缺点
~~~~~~~~~
* 学习曲线陡峭,知识点很多。这个语言的设计是用数学思维来设计的,有大量的符号和特殊表达形式。
闲话
~~~~~~~~~
haskell在编程语言中塞入了很多概念,比如惰性求值,自创类型,monad。并且编程语言格式有很多魔法,比如模式匹配,带条件的模式匹配等,使用了太多的符号。如果scheme能够用子语言的形式来实现haskell的所有功能,我认为会比haskell更受欢迎。haskell有太多的数学习气,需要大量的逻辑思维。
haskell更象smalltalk一样是一个先驱,一个演示,而不是c++这样的工业目的和向前兼容。scala是一个向前兼容的工业目的的具有函数能力的语言。
链接
~~~~~~~~~~~~
* 电脑:编程语言:概念:纯函数语言
* real world haskell