F# → OCaml → Haskell → F#・再 Haskellは良い言語だったなーlet mult x y = x * y;;
この型がint → int → int
になるのはまあ、いいとして.Haskellならコメントがわりに 型を明記するのが私は好きで、mult :: int → int → int mult x y = x * y
とでも書くけどF#ではどうするかと言えばlet mult (x:int) (y:int) :int = x * y;;
こんなん?一々カッコつけないといけないのかしら. 面倒だな. ちゃんと学校で関数型言語の勉強をする前はこんなこと まるで気にしなかったけれど、動く原理を知るごとに 例えば型推論の怖さとか、もしかしてF#ってダメダメなんじゃ ないかって気がしてきた.というかHaskellがとてもきっちり していて気持ちいい.数学的なのだなあ. Pythonと同じようにインデントに意味を持たせているというのは 難しい.手続き型言語でインデントはインデントを間違えるのは ただのバカだが関数型でインデントは何度見なおしてもどこが インデント間違いなのか今でも分からずコンパイルが出来なかった コードがいくらでもある.Ocamlみたいに match-with の入れ子の 為に begin-end 或いはカッコで括ったりするのは、それはそれで バカみたいだ.その為にインデントに意味をもたせるのは有難いの だけれど.
コメ(0) | トラ(0)