Haskell は、高度で純粋関数型の汎用プログラミング言語です。このガイドでは、Haskellをインストールする方法と、UnixライクなオペレーティングシステムでHaskellプログラミング言語を使い始める方法について説明します。 Haskellは3つの方法でインストールできます。手動でインストールし、スタックを使用し、Haskellプラットフォームを使用します。スタックを使用してHaskellをインストールすることは、これまでのところ公式に推奨されている最も簡単な方法です。このガイドでは、Haskellをインストールする方法と、UnixライクなシステムでHaskellプログラミング言語を使い始める方法を説明します。
Haskellツールスタックをインストールする
Haskell Tool Stackは、Haskellプロジェクトを構築するためのクロスプラットフォームプログラムです。 Haskell Stackを使用すると、Haskellの包括的な開発環境を利用できます。 Haskellツールスタックを使用すると、次のコンポーネントを簡単にインストールできます。
- スタック :マルチパッケージHaskellプロジェクトのプロジェクトビルダー
- GHC :Haskellプログラム用のコンパイラとインタプリタ
- ハドック :Haskellパッケージ用のドキュメントジェネレータ
- そして何千ものパッケージをオンデマンドでインストールできます。
まず、コマンドを使用してHaskellスタックをインストールしましょう:
$ wget -qO- https://get.haskellstack.org/ | sh
または、
$ curl -sSL https://get.haskellstack.org/ | sh
上記のコマンドは、最新のStackバージョンをダウンロードして、すぐにインストールします。
これらのコマンドは、ほとんどすべてのLinuxディストリビューションとFreeBSDで同じです。ただし、Archコミュニティは[コミュニティ]で公式バージョンを維持しています リポジトリ。したがって、Arch LinuxやArchベースのシステムを実行している場合は、次のコマンドを実行して、最新の安定したStackバージョンをインストールしてください。
$ sudo pacman -S stack
インストールしたら、次のコマンドを実行して、PATH環境変数に $ HOME / .local / binを含めるように設定します。 :
$ echo 'export PATH=$HOME/.local/bin:$PATH' >> ~/.bashrc
次のコマンドを使用して、〜/.bashrcファイルに加えられた変更を更新します。
$ source ~/.bashrc
インストールされているStackのバージョンを見てみましょう:
$ stack --version Version 1.6.1, Git revision f25811329bbc40b0c21053a8160c56f923e1201b (5435 commits) x86_64 hpack-0.20.0
いつでもスタックを更新するには、次を実行するだけです:
$ stack upgrade
パッケージインデックスを更新するには、次のコマンドを実行します:
$ stack update
Stackをインストールしました。先に進んで、新しいプロジェクトを作成しましょう。
新しいプロジェクトの設定
新しいプロジェクトを進めるには、haskellソースコード、package.yaml、stack.yaml、.cabalファイルなどのファイルとその他のいくつかのディレクトリが必要です。これらのファイルは手動で作成できます。ただし、Haskellには多くの事前定義されたテンプレートがあります。したがって、手動で作成する代わりに使用できます。
使用可能なすべてのテンプレートを一覧表示するには、次を実行します:
$ stack templates
次に、「ostechnix」という新しいプロジェクトを作成します。 「new-template」を使用します 。これを行うには、次を実行します:
$ stack new ostechnix new-template
サンプル出力は次のようになります:
Downloading template "new-template" to create project "ostechnix" in ostechnix/ ... The following parameters were needed by the template but not provided: author-email, author-name, category, copyright, github-username You can provide them in /home/sk/.stack/config.yaml, like this: templates: params: author-email: value author-name: value category: value copyright: value github-username: value Or you can pass each one as parameters like this: stack new ostechnix new-template -p "author-email:value" -p "author-name:value" -p "category:value" -p "copyright:value" -p "github-username:value" Looking for .cabal or package.yaml files to use to init the project. Using cabal packages: - ostechnix/ Selecting the best among 12 snapshots... Downloaded lts-10.0 build plan. Populated index cache. * Matches lts-10.0 Selected resolver: lts-10.0 Initialising configuration using resolver: lts-10.0 Total number of user packages considered: 1 Writing configuration to file: ostechnix/stack.yaml All done.
GHCのインストール
新しく作成されたプロジェクトのディレクトリに移動し、「stack setup」を実行して、必要なコンパイラをダウンロードしてインストールします。
$ cd ostechnix/
$ stack setup
このコマンドは、正しいGHCコンパイラを新しいHaskellプロジェクトにインストールします。 GHCは隔離された場所に設置されます。つまり、これはシステムレベルのインストールに干渉しません。
GHCはグローバルスタックルートディレクトリにインストールされることに注意してください。したがって、コマンド ghcを使用してシェルから呼び出すことはできません。 。代わりに、次の使用を検討してください: stack ghc 、スタックghci 、スタックrunghc 、または stack exec 。パスの詳細については、次を実行してください:
$ stack path
および..
$ stack exec env
これで、新しいプロジェクトが作成され、プロジェクトに適切なコンパイラがインストールされました。それを構築する時が来ました。
プロジェクトの構築
プロジェクトをビルドするには、次を実行します:
$ stack build
このコマンドは、プロジェクトのディレクトリ内で実行してください。ビルドが完了したら、次のコマンドを使用して実行可能ファイルを実行します。
$ stack exec ostechnix-exe
サンプル出力は次のようになります:
someFunc
実行可能ファイル「ostechnix-exe」は./。stack-workに非表示になることに注意してください プロジェクトのメインディレクトリ内のディレクトリ。
Haskellで遊ぶ
ghciコンパイラを開きます:
$ stack exec ghci
または、
$ stack exec -- ghci
ghciプロンプトが表示されます。
GHCi, version 8.2.2: http://www.haskell.org/ghc/ :? for help Prelude>
他のみんなと同じように、「helloworld!」から始めましょう。
Prelude> "hello world!" "hello world!"
算術演算を試してみましょう。
Prelude> 14+90 104 Prelude> 14-90 -76 Prelude> 34/2 17.0
いくつかの複雑な操作:
Prelude> (67*98) - 50 - (24-2) 6494
どちらの数字が大きいか小さいかを調べてみましょう:
Prelude> max 34 17 34 Prelude> min 45 98 45
後継者を探す:
Prelude> succ 89 90
指定された入力が等しいかどうかを確認します:
Prelude> 10 == 10 True Prelude> 10 == 20 False Prelude> "ostechnix" == "ostechnix" True Prelude> "ostechnix" == "windows" False
以下のようなブール値を使用することも簡単です:
Prelude> True && False False Prelude> True && True True Prelude> False || True True Prelude> False && False False
デフォルトでは、プロンプト名は Prelude>です。 。次のように入力して、これを他の何か、たとえばghci>に変更できます。
:set prompt "ghci> "
ヘルプが必要な場合は、次のように入力してください:
:?
終了するには、次のように入力します:
:quit
または、
:q
プロジェクトのディレクトリを作成する必要がないことに注意してください。シェルから「stackghci」を実行するだけで、Stackの操作を開始できます。正しいGHCバージョンがダウンロードされ、プレリュード>にアクセスします。 プロンプト。
Haskellコードのコンパイルと実行
Haskellコードを実行するのは簡単です。次の例を確認してください。
"ostechnix.hs"というファイルを作成します 以下の内容で。
#!/usr/bin/env stack -- stack --install-ghc runghc main :: IO () main = putStrLn "Welcome To OSTechNix"
これで、コマンドを使用してこのプログラムを実行できます:
$ stack ostechnix.hs Welcome To OSTechNix
別の例を示します。
myhaskell.hsという名前のhaskellプログラムを作成します 次のコードで:
module Main where main :: IO () main = putStrLn "Welcome To OSTechNix!"
次に、コマンドを使用してコンパイルします:
stack exec -- ghc myhaskell.hs -o test.hs
サンプル出力は次のようになります:
[1 of 1] Compiling Main ( myhaskell.hs, myhaskell.o ) Linking ostechnix.hs ...
最後に、以下に示すように実行します。
$ ./test.hs Welcome To OSTechNix!
基本について説明しました。学ぶことはもっとたくさんあります! Haskellプログラミングの詳細に興味がある場合は、以下のリソースを参照して、Haskellを基本から上級レベルまで学習してください。
- Haskellチュートリアル
- Learnyouhaskell
- 実世界のハスケル
- ブラウザでHaskellを試してみてください
- Haskell公式ウィキ