[ create a new paste ] login | about

Link: http://codepad.org/0WvSpM7o    [ raw code | output | fork ]

Haskell, pasted on Nov 13:
-- 自然数を定義
data NaturalNum = Zero | PlusOne NaturalNum deriving (Eq,Ord,Show,Read)

-- 加算を定義
Zero +^ n = n
m +^ Zero = m
m +^ n = inc m +^ dec n

-- 減算を定義
Zero -^ n = n
m -^ Zero = m
m -^ n | m == n = Zero
m -^ n = dec m -^ dec n

-- インクリメント(1+)を定義
inc n = PlusOne (n)

-- デクリメント(1-)を定義
dec (PlusOne (n)) = n

-- 自然数を独自自然数へ変換
int2NaturalNum 0 = Zero
int2NaturalNum n = PlusOne (int2NaturalNum (n-1))

-- 独自自然数を自然数へ変換
naturalNum2int Zero = 0
naturalNum2int n = 1 + naturalNum2int (dec n)


Output:
1
2
Error occurred
ERROR - Undefined variable "main"


Create a new paste based on this one


Comments: