| ホーム > Haskell > 2005年1月8日 > Do-it-yourself operators | 記事の検索 | サイト検索 | 更新情報 |
| プロフィール | 記事一覧 | リンク集 | RSS |
|
CRAFT 3.7 (p.51)とAppendix Cを見ながら、C言語風の % で `mod` の代わりにしてみる。
\begin{code}
module Main where
(%) :: Integral a => a -> a -> a
infixl 7 %
(%) = mod
t1 = 7 `mod` 3
t2 = 7 % 3
t3 = 7 `mod` (-3)
t4 = 7 % (-3)
t5 = 7 `mod` 0
t6 = 7 % 0
\end{code}
Main> t1 1 Main> t2 1 Main> t3 -2 Main> t4 -2 Main> t5 Program error: divide by zero Main> t6 Program error: divide by zero
2006 [ 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 ]
2005 [ 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 ]
2004 [ 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 ]
book(3) / char(2) / compiler(3) / craft(5) / data(7) / enum(1) / geb(2) / hawiki(1) / hugs(1) / info(1) / io(3) / list(2) / map(3) / monad(16) / nobsun(12) / report(4) / sicp(2) / soe(8) / suchthat(2) / yaht(8)