Haskell
すべての式や関数が副作用を持たない「純粋関数型言語」(purely functional language)に分類される。大きな特徴として、与えられた値を必要になるまで評価(計算)しない「遅延評価」(lazy evaluation)という仕組みがあり、消費メモリ容量の節約やプログラム起動の高速化、無限に続く可能性のあるデータの容易な取り扱いなどが可能となっている。
静的型付け言語であり、すべての変数などのデータ型をコンパイル時に決定できなければならないが、「型推論」(type inference)と呼ばれる機構を備え、関数の型を処理内容から推定してくれる。明示的な型宣言の記述を減らしてシンプルなコードを書くことができる。
他にも、第一級関数や高階関数、ラムダ式、型クラス、無名関数、関数のカリー化、パターンマッチング、無限リスト、モナドなどの多くの関数型言語に共通する機能、および、代数的データ型、リストの内包表記といった特徴的な機能が提供される。
Haskellは関数型言語の教育・研究の場でよく用いられるが、言語処理系の開発など実践的な用途でも用いられることがある。「Haskell」という名称の由来は、関数型言語に基礎を与えた理論の研究で大きな功績を残した米数学者ハスケル・カリー(Haskell B. Curry)氏にちなんでいる。
標準の処理系(インタプリタおよびコンパイラ)としてGHC(Glasgow Haskell Compiler)がよく知られる。BSDライセンスに基づいて配布されているオープンソースソフトウェアで、Haskellの事実上の標準実装としてよく参照される。独自の拡張仕様も持っており、言語仕様に準じる機能として参照される。
(2023.8.4更新)