( Fibonacci: A series of numbers where the next number is made of the two numbers before it ) |0100 @on-reset #0019 #0000 &l DUP2 pdec #2018 DEO DUP2 fib pdec #2018 DEO DUP2 #0000 #0001 ROT2 fibr pdec #0a18 DEO POP2 POP2 INC2 GTH2k ?&l POP2 POP2 #800f DEO BRK ( recursive ) @fib ( num* -- numfib* ) #0001 GTH2k ?&ok POP2 JMP2r &ok SUB2k fib STH2 INC2 SUB2 fib STH2r ADD2 JMP2r ( tail-recursive ) @fibr ( a* b* num* -- a* b* numfib* ) ORAk ?&no-0 POP2 OVR2 JMP2r &no-0 DUP2 #0001 NEQ2 ?&no-1 POP2 DUP2 JMP2r &no-1 #0001 SUB2 STH2 SWP2 ADD2k NIP2 STH2r !fibr ( print routine ) @pdec ( short* -- ) #2710 LIT2r 00fb &w DIV2k #000a DIV2k MUL2 SUB2 SWPr EQUk OVR STHkr EQU AND ?&skip DUP LIT "0 ADD #19 DEO INCr &skip POP2 #000a DIV2 SWPr INCr STHkr ?&w POP2r POP2 POP2 JMP2r