Haskeなんとか
一日くらいでやめると思ってたんだけど、なんか色々アドバイスもらったりして、退くに引けなくなってきた…
それと読もうとされているドキュメントはやさしくないで評判のようです。
昨日のコメントより
騙された…orz
というか、右も左もわからないHaskell初心者はgoogle→sampou.org→Gentleっていう流れはごくごく自然な流れなわけで、なんていうか、それでいいのか。こういうことするから、「関数型=わからないから使えない」とかになるんじゃないだろうか。とか言ってみる。
まあ、それはいいか。Haskellといえば、MLみたいな中途半端なものとは違って、純粋なわけだ。だから、副作用なんていうのは全然認めていない。と、いうのはわかっていた。
そうなると、「じゃあ、入出力とかはどうなってんだろうか。」とか思うのは自然だろう。僕には思い付きもしないようななにかがあるのかもしれない…と思ってHello World。
-- Hello World module Main (main) where main = do putStrLn "hello"
騙された…
見るからに普通なんだけど…。
doとかmonadとか、そういう僕の知らない世界が広がってて、なんかうまいこと辻褄が合うんだろうっていうのは色々読んでてなんとなくわかるんだけど…けど…この、モヤモヤとした思いは…何っ…?
あと、GHCのビルドが遅いことに関してフォローをいただいた。
ライブラリがいっぱいあるっていうのと、lazyでpureなghcでコンパイルしてるから、遅くなってもしかたがない。っていうことらしい。
って、なんか、それでいいのか。ライブラリが多いっていうのはまあ、当然として、ghcでコンパイルしてるからっていうのはおかしいんじゃないだろうか。lazyでpureな物は最近の研究が進んだこととか、遅延がうまくいくのとかが重なって、「Cで書かれたものと同等か、それ以上の速度が出る」んじゃなかったっけ…確か。
特殊なケースでHaskellのほうが遅くなるっていうんだったらわかるけど、コンパイラという分野で遅いっていうのは、さすがに「大体の場合でCよりは遅い」と言うしかないんじゃないだろうか。
まあ、速度以外のあらゆるものを放棄したCと比べるのはいけないかもしれない。処理系による速度の差が問題になることなんて滅多に無いかもしれない。僕も貧乏性プログラマを名乗ってはいるけど、面倒なときはパフォーマンスよりも簡単さを選ぶことだってしょっちゅうだし、その簡単さをありがたいとも思う。
けど、だけど、過剰宣伝というか、そういうのはどうかと思うのである。
っていうのが、まあ、Haskell学んで一日目の何の発言もする権利も持たないような糞初心者が思っていることを吐き出しただけのものです。適当に流してください。