RosettaCodeData/Task/Ackermann-function/Agda/ackermann-function-1.agda

13 lines
241 B
Agda
Raw Permalink Normal View History

2017-09-23 10:01:46 +02:00
open import Data.Nat
open import Data.Nat.Show
open import IO
module Ackermann where
ack : -> ->
ack zero n = n + 1
ack (suc m) zero = ack m 1
ack (suc m) (suc n) = ack m (ack (suc m) n)
main = run (putStrLn (show (ack 3 9)))