- 今日から勉強会
- こちらから環境をダウンロード
- GHCiを使う(WinGHCiを使う)
- テキストは
- ここに英語版pdf
- コードのコピペができる
- Hakell関連の検索サイト Hoogle
- Hakellの特長
- 関数型言語
- 遅延評価
- 静的型つけ、ただし、型推測は賢い
- 算数ができる
- Hoogleにもあるけれど、関数は、どういう型に対して有効か、と入力と出力とがどういう型でできているかを定めている
sort :: Ord a => [a] -> [a]
-
- これは、sortという関数はOrd型をaとして、aのリストを入力にとってaのリストを出力とする、という意味
a => a -> a -> a
-
- こうなっていたら、aをとって、さらにaをとって、aを返す、という意味
- その他
- リストは [1,2,3]のように大かっこ[]とカンマ , 区切り
- GHCiの終了は :q
- 関数を作って登録する
- ファイルに次のように書いて、"baby.hs"というファイル名で保存して…
doubleMe x = x + x
doubleUs x y = x*2 + y*2
doubleUs2 x y = doubleMe x + doubleMe y
-
- ロードする。":lload baby"でも":l baby"でもよいようだ。WinGHCiならツールバーのFileからロードするファイルを選んでもよい
- ":cd C:\Users\ryamada\Desktop\Haskell"のようにしてワーキングディレクトリを移動することもできる(ツールバー経由だと、勝手に動いてくれるようだ)
Prelude> :load "baby.hs"
[1 of 1] Compiling Main ( baby.hs, interpreted )
Ok, modules loaded: Main.