Hatena::Grouphaskell

lnzntのHaskell日記 このページをアンテナに追加 RSSフィード

2011年07月28日(木)

型と基本クラス

| 21:25 | 型と基本クラス - lnzntのHaskell日記 を含むブックマーク はてなブックマーク - 型と基本クラス - lnzntのHaskell日記 型と基本クラス - lnzntのHaskell日記 のブックマークコメント

基本クラス

クラス
共通のメソッドを提供する型の集合
メソッド
多重定義された関数

Eq - 同等クラス

  (==) :: a -> a -> Bool
  (/=) :: a -> a -> Bool

Prelude> 1 == 1
True

Ord - 順序クラス

  (<)   :: a -> a -> Bool
  (<=)  :: a -> a -> Bool
  (>)   :: a -> a -> Bool
  (>=)  :: a -> a -> Bool
  (min) :: a -> a -> a
  (max) :: a -> a -> a

Prelude> 2 > 1
True

Show - 表示可能クラス

  show :: a -> Show

Prelude> show False
"False"

Read - 読み込み可能クラス

  read :: String -> a

Prelude> read "False"::Bool
False

Num - 数値クラス

  (+)    :: a -> a -> a
  (-)    :: a -> a -> a
  (*)    :: a -> a -> a
  negate :: a -> a
  abs    :: a -> a
  signum :: a -> a

Prelude> 1 + 2
3

Integral - 整数クラス

  div :: a -> a -> a
  mod :: a -> a -> a

Prelude> 7 `div` 3
2

Fractional - 分数クラス

  (/)   :: a -> a -> a
  recip :: a -> a              -- 逆数

Prelude> 7 / 3
2.3333333333333335