ack.tcl 292 B

123456789101112131415161718
  1. interp recursionlimit {} [expr {10000}]
  2. namespace import ::tcl::mathop::*
  3. proc ack {m n} {
  4. if {! $m} {
  5. incr n
  6. } elseif {! $n} {
  7. incr m -1
  8. ack $m 1
  9. } else {
  10. incr n -1
  11. ack [- $m 1] [ack $m $n]
  12. }
  13. }
  14. puts [ack [lindex $argv 0] [lindex $argv 1]]