当前位置: 首页 > 文档资料 > Haskell 中文教程 >

概述

优质
小牛编辑
135浏览
2023-12-01

Haskell是一种功能编程语言,专门用于处理符号计算和列表处理应用程序。 函数式编程基于数学函数。 除了Haskell之外,一些遵循功能编程范例的其他流行语言包括:Lisp,Python,Erlang,Racket,F#,Clojure等。

conventional programing ,指令被视为特定语法或格式的一组声明,但是在functional programing的情况下,所有计算被认为是单独的数学函数的组合。

与Haskell一起发挥作用

Haskell是一种广泛使用的纯函数式语言。 在这里,我们列出了一些使这种语言比其他传统编程语言(如Java,C,C ++,PHP等)更特殊的要点。

  • Functional Language - 在传统的编程语言中,我们指导编译器执行一系列任务,这些任务只是告诉您的计算机“做什么”和“怎么做?” 但在Haskell,我们会告诉我们的电脑“它是什么?”

  • Laziness - 哈斯克尔是一种懒惰的语言。 lazy ,我们的意思是Haskell不会毫无理由地评估任何表达式。 当评估引擎发现需要计算表达式时,它会创建一个thunk data structure来收集该特定评估所需的所有信息以及指向该thunk data structure的指针。 只有在需要评估特定表达式时,评估引擎才会开始工作。

  • Modularity - Haskell应用程序只是一系列功能。 我们可以说Haskell应用程序是许多小型Haskell应用程序的集合。

  • Statically Typed - 在传统的编程语言中,我们需要定义一系列变量及其类型。 相比之下,Haskell是一种严格类型的语言。 通过术语Strictly Typed语言,我们的意思是Haskell编译器足够智能,可以计算出声明的变量的类型,因此我们不需要明确提到所用变量的类型。

  • Maintainability - Haskell应用程序是模块化的,因此维护它们非常简单且经济高效。

功能程序更加并发,它们遵循执行中的并行性,以提供更准确和更好的性能。 哈斯克尔也不例外; 它是以有效处理multithreading的方式开发的。

你好,世界

这是一个简单的例子来展示Haskell的动态。 看看下面的代码。 我们需要的只是在控制台上打印“Hello Word”的一行。

main = putStrLn "Hello World"

一旦Haskell编译器遇到上面的代码,它会立即产生以下输出 -

Hello World 

我们将在本教程中提供大量示例,以展示Haskell的强大功能和简单性。