しかし、なんで入門書とか、入門サイトっては、ああも説明がわかりにくいんだろう。
難しいというより、簡単に見せようとして自滅してる感と言うか。
例えば、先にラムダ式で (\ x -> x*2) みたいなのやって、次に複数引数がある場合として (\ x -> (\y-> x*y))
とかやってから、これは (\ x -> \ y-> x*y) と同じで、さらに簡易的な書式として (\ x y -> x*y) と書けるって順で
教えてくれれば、引数1の型 -> 引数2の型 -> 戻り値の型 みたいな表現も、すぐ理解できるし、
case of の文法見た後で、関数の説明してくれれは、関数のマッチングはcase ofによる表現を簡易的に書けるようにした
ものでしかないってわかると思うんだが、なんでラムダ式より先にマッチングパターン付きの関数から説明しちゃうかねぇ。
カリー化もラムダ式を理解すれば、それが自然な展開であることはよく分かるし。
モナドも、左式の出力を右式の入力にパイプ的に渡す演算子を定義して、左式の出力の結果を確認してから、
たしかに、この増田の文章は俺にはわかりにくかった。ちゃんちゃん