1990年 ・ 関数型
Haskellの歴史
遅延評価をする関数型言語が各大学で乱立していたため、共通の言語として委員会で設計された、非正格で純粋な関数型言語。のちに型クラスやモナドによる入出力など、型システムと副作用の扱いに関する仕組みが加わった。
- 年(初めて公開された年)
- 1990年
- 作った人
- Paul Hudak、John Hughes、Simon Peyton Jones、Philip Wadler
- 組織
- 委員会(Yale、Glasgow、Chalmers、Edinburgh ほか)
- 系統
- 関数型
年の決め方 Haskell Report 1.0 が1990年4月1日付で公開された(1987年の会合から委員会で設計)。
Haskellの祖先と子孫
影響元をたどれる言語1、影響先をたどれる言語9を描きました。点を押すとその言語のページに移ります。
全体の図は一覧の系統図にあります。
目指したこと
遅延評価の関数型言語の研究を進めるための共通言語を、委員会で作ること。
“Version 1.0 dated 1 April 1990”
年の根拠の出典: Hudak, Hughes, Peyton Jones, Wadler, A History of Haskell: Being Lazy With Class (HOPL III) (転載版で内容を確認)
“non-strict, purely functional”
目指したことの根拠の出典: Hudak, Hughes, Peyton Jones, Wadler, A History of Haskell: Being Lazy With Class (HOPL III) (転載版で内容を確認)
影響を受けた言語
出典が明言した線だけです。「受け継いだ点」は出典の記述を要約したものです。
-
ML ・ 1973年
受け継いだ点: 言語を形式的に定義するという姿勢
影響を受けた側の資料が述べています ・ 出典: Hudak, Hughes, Peyton Jones, Wadler, A History of Haskell: Being Lazy With Class (HOPL III) (転載版で内容を確認)
一覧にない言語からの影響(名前だけ): Miranda・Lazy ML・Orwell
影響を与えた言語
-
Python ・ 1991年
受け継がれた点: リスト内包表記
影響を受けた側の資料が述べています ・ 出典: Python docs, What's New in Python 2.0
-
Scala ・ 2003年
受け継がれた点: for 式はモナド内包表記に基づき、ビューは型クラスの影響を受ける
影響を受けた側の資料が述べています ・ 出典: An Overview of the Scala Programming Language (EPFL, 2006)
-
Rust ・ 2010年
受け継がれた点: 型クラス・型族(GHC)
影響を受けた側の資料が述べています ・ 出典: The Rust Reference: Influences
-
Swift ・ 2014年
受け継がれた点: 言語機能の着想(具体的な機能は未記載)
影響を受けた側の資料が述べています ・ 出典: Chris Lattner's Homepage
関わる思想のテーマ
あわせて見る
- プログラミング言語の比較 C・JavaScript・Java・Python を同じものさしで。
- 冗談と実験の枝:難解プログラミング言語
出典
- Hudak, Hughes, Peyton Jones, Wadler, A History of Haskell: Being Lazy With Class (HOPL III) (転載版で内容を確認)
- Python docs, What's New in Python 2.0
- An Overview of the Scala Programming Language (EPFL, 2006)
- The Rust Reference: Influences
- Chris Lattner's Homepage
影響の線の引き方は一覧の注記に書いています。