Haskell入門2日目
二日目
そろそろ温泉いきたい。温泉のロビーで扇風機あたりながらHaskellの勉強したい。

- 作者: Miran Lipovača,田中英行,村主崇行
- 出版社/メーカー: オーム社
- 発売日: 2012/05/23
- メディア: 単行本(ソフトカバー)
- 購入: 25人 クリック: 580回
- この商品を含むブログ (69件) を見る
第2章
2.1
:t 0
としてみたらNum a => a
- => ってなんぞや…
2.2
- int たくさん使えて便利
- C言語はクs
pi
っていう定数あるのかcircumference
,Float
を指定するとFloat -> Float
で、指定しない場合Floating a => a -> a
だった。- ちなみに答えは
Double
のときと同じ桁。
- ちなみに答えは
- haskellのコメントは
--
らしい。SQLインジェクションを思い出した
2.3
- 型変数。聞いたことない
- なるほどジェネリクス
<T>
!!!!!- それよりもはるかにパワフルらしい
2.4
- 型クラス。インターフェースなら java で書きまくってるぞ!!
- 気になってた
=>
登場。 Floating a => a -> a
の場合、Floating
が型クラス(≒ interface) で、=>
の部分は->
の類というわけではなく型クラス制約を示しているというものか。- 要するに
Floating
をa
は満たしておいてね、ということ。- 型のインターフェースっぽいというかインターフェースそのものというか(雑
Double
は確かに満たしてそう。pi
はFloating
だった。(そりゃ↑の結果からみて当たり前だ?)
- http://walk.wgag.net/haskell/typeclass.html
- 要するに
Ord
、 python とか perl にもあるなぁ。意味合いちょっと違うけど。read
とかshow
覚えておくと便利そう- 型注釈。キャストっぽい?
[read("1"), 1, 2, 3]
と[read("1"), 1, 2, 3.0]
だと後者はFractional
になる。enum
、javaにもある!!と思ったけど違うものだった。fromIntegral
、やってることはキャストみたいなもんだ。- キャストっぽくしてくれる時もありそう http://d.hatena.ne.jp/sirocco/20110121/1295563675