RosettaCodeData/Task/Ackermann-function/Tcl/ackermann-function-2.tcl
Ingy döt Net 86c034bb8b new files
2013-04-10 12:38:42 -07:00

9 lines
205 B
Tcl

proc ack {m n} {
if {$m == 0} {
expr {$n + 1}
} elseif {$n == 0} {
tailcall ack [expr {$m - 1}] 1
} else {
tailcall ack [expr {$m - 1}] [ack $m [expr {$n - 1}]]
}
}