morris555's diary

高校生のブログです。

数値型についてのメモ

haskellで失敗したので自分用メモを。

簡単な計算するだけだったのですが……

調子に乗って

test :: Int -> Int

こんな型宣言をしたので大きな数の計算ができなくて

ただの凡ミスです(泣)

-- (1)
test :: Integer -> Integer
-- (2)
test :: (Num a) => a -> a

このどちらかにすればいいみたい(?) ←結局は同じ形になりますが…

(1)は普通の方法です。Integerは精度無制限なので大丈夫ですね

(2)の方を使うと小数も扱えるので便利だけど、整数しか計算できないときにエラーが出ないので使えないのかな。(調査の必要あり)

Num型はどんな数値でも(?)受け付けるので使うときには注意が必要かと思いました。

pythonだと型とかあまり意識してなかったので注意ですね。