37 lines
354 B
Scheme
37 lines
354 B
Scheme
(variable result 0)
|
|
(push result)
|
|
(@)
|
|
(push fib)
|
|
(call)
|
|
(push cleanup)
|
|
(jmp)
|
|
fib
|
|
(dup)
|
|
(push 0)
|
|
(=)
|
|
(over)
|
|
(push 1)
|
|
(=)
|
|
(or)
|
|
(push recur)
|
|
(branch)
|
|
(return)
|
|
recur
|
|
(dup)
|
|
(push 1)
|
|
(-)
|
|
(push fib)
|
|
(call)
|
|
(over)
|
|
(push 2)
|
|
(-)
|
|
(push fib)
|
|
(call)
|
|
(+)
|
|
(nip)
|
|
(return)
|
|
cleanup
|
|
(push result)
|
|
(!)
|
|
(bye)
|