PureScriptPureScriptのロゴ
パラダイム関数型プログラミング、純粋関数型言語
PureScriptは、JavaScriptにコンパイルされる純粋関数型プログラミング言語である。Webアプリケーション、サーバサイドアプリケーション、Electronを使用したデスクトップアプリケーションの開発に使用できる。構文はHaskellとほぼ同等。また、ローポリモーフィズム(英語版)や拡張可能なレコードを導入している。また、Haskellとは異なり、PureScriptは正格評価を採用している。 PureScriptは2013年にPhil Freemanによって設計された。彼がPureScriptに取り組み始めたのは、Haskellのセマンティクスを維持したままJavaScriptにコンパイルしようとする様々な試み(Fay、Haste、GHCJSの使用など)が彼の満足のいくものではなかったからだ[2] 。 その後、コミュニティにピックアップされ、GitHub上で開発されている。コミュニティによって開発された追加のコアツールには、専用のビルドツール「Pulp」[3]、ドキュメントディレクトリ「Pursuit」[4]、パッケージマネージャ「Spago」などがある。 PureScriptは、正格評価、永続的なデータ構造、型推論を特徴としている。PureScriptの型システムは、Haskellのような類似の関数型言語と多くの機能を共有している。例えば、以下のような機能があげられる。
歴史
特徴
代数的データ型
パターンマッチ
高カインド型
型クラス
関数従属性
高ランクポリモーフィズム(higher-rank polymorphism)
脚注[脚注の使い方]^ 出典URL: https://github.com/purescript/purescript/releases/tag/v0.15.15
^ “Read PureScript by Example 。Leanpub
^ A build tool for PureScript projects, PureScript Contrib, (2019-03-08), https://github.com/purescript-contrib/pulp 2019年3月14日閲覧。
^ “Pursuit”. pursuit.purescript.org. 2019年3月14日閲覧。
関連項目
Elm
外部リンク
公式ウェブサイト
PureScript by Example (設計者Phil Freeman氏によるPureScriptの解説)
実例によるPureScript (PureScript by Exampleの日本語訳)