54 lines
822 B
Plaintext
54 lines
822 B
Plaintext
main:
|
|
{((0 0) (0 1) (0 2)
|
|
(0 3) (0 4) (1 0)
|
|
(1 1) (1 2) (1 3)
|
|
(1 4) (2 0) (2 1)
|
|
(2 2) (2 3) (3 0)
|
|
(3 1) (3 2) (4 0))
|
|
|
|
{ dup
|
|
"A(" << { %d " " . << } ... ") = " <<
|
|
reverse give
|
|
ack
|
|
%d cr << } ... }
|
|
|
|
ack!:
|
|
{ dup zero?
|
|
{ <-> dup zero?
|
|
{ <->
|
|
cp
|
|
1 -
|
|
<- <- 1 - ->
|
|
ack ->
|
|
ack }
|
|
{ <->
|
|
1 -
|
|
<- 1 ->
|
|
ack }
|
|
if }
|
|
{ zap 1 + }
|
|
if }
|
|
|
|
zero?!: { 0 = }
|
|
|
|
Output:
|
|
|
|
A(0 0 ) = 1
|
|
A(0 1 ) = 2
|
|
A(0 2 ) = 3
|
|
A(0 3 ) = 4
|
|
A(0 4 ) = 5
|
|
A(1 0 ) = 2
|
|
A(1 1 ) = 3
|
|
A(1 2 ) = 4
|
|
A(1 3 ) = 5
|
|
A(1 4 ) = 6
|
|
A(2 0 ) = 3
|
|
A(2 1 ) = 5
|
|
A(2 2 ) = 7
|
|
A(2 3 ) = 9
|
|
A(3 0 ) = 5
|
|
A(3 1 ) = 13
|
|
A(3 2 ) = 29
|
|
A(4 0 ) = 13
|