Haskell のコードを読んだことがない人を対象とするぐらい初歩的なやつ
Mac なら
brew update
brew install ghc
brew install haskell-platform
30分ぐらいかかる₍₍ (ง ˙ω˙)ว ⁾⁾
ghc: The Glasgow Haskell CompilerScala の REPL と同じようにコンソール上で色々実行できるインタプリタがある.
ghci
と実行すると起動する.
Prelude> 1 + 2
3
Prelude> succ 1
2
Prelude> succ 4
5
1 + 2 も関数を実行しているの?
+ と言うのは2つの引数を受け取り
それらを加算する中置関数です.
ちなみに関数界隈では
関数を実行する というよりも
関数を適用するという言い方をします
引数1 関数名 引数2
1 + 2
関数名 引数 ...
succ 1
div 2 1
div 2 1
は 1/2
なのか 2/1
なのか分かり難い…
なので
2 `div` 1
とも書ける.
※ div は2つの整数を除算を行う関数
Prelude> (+) 1 2
間違ってるかもしれないけど
これは部分適用を利用していて、詳細に書くと
Prelude> (((+) 1) 2)
ということをしていて、
関数 ”+” に “1” を部分適用した関数に “2” を適用している
Scala と Haskell の書き方の違いを比較とかしたかったけど、そこまでいけなかった…
次回は関数定義の方法とかをやりたい…