2013-08-05

1週間ぐらいHaskellの独習してみたんだが、

関数型言語ってよく知らんから、かなり頭が混乱した。

しかし、なんで入門書とか、入門サイトっては、ああも説明がわかりにくいんだろう。

難しいというより、簡単に見せようとして自滅してる感と言うか。

例えば、先にラムダ式で (\ x -> x*2) みたいなのやって、次に複数引数がある場合として (\ x -> (\y-> x*y))

とかやってから、これは (\ x -> \ y-> x*y) と同じで、さらに簡易的な書式として (\ x y -> x*y) と書けるって順で

教えてくれれば、引数1の型 -> 引数2の型 -> 戻り値の型 みたいな表現も、すぐ理解できるし、

case of の文法見た後で、関数の説明してくれれは、関数マッチングcase ofによる表現を簡易的に書けるようにした

ものしかないってわかると思うんだが、なんでラムダ式より先にマッチングパターン付きの関数から説明しちゃうかねぇ。

カリー化もラムダ式を理解すれば、それが自然な展開であることはよく分かるし。

モナドも、左式の出力を右式の入力パイプ的に渡す演算子定義して、左式の出力の結果を確認してから

右式の入力に渡すようにしておけば、前の処理が先に実行されるから、IOみたいな順序性があるもの

この仕組で対応できる、という説明が欲しかった。

人は一度理解してしまうと、何が解らなかったのか忘れてしまうからしょうが無いのかな。

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん