100 REM FACTORIAL 110 DIM F(35): F(0)=1: REM MEMOS 120 DIM S(35): SP=0: REM STACK+PTR 130 FOR I=1 TO 13 140 : S(SP)=I: SP=SP+1: REM PUSH(I) 150 : GOSUB 200 160 : SP=SP-1: REM POP 170 : PRINT I;"! = ";S(SP) 180 NEXT I 190 END 200 REM FACTORIAL: S(SP-1) = S(SP-1)! 210 IF F(S(SP-1)) THEN 240: REM MEMOIZED 220 S(SP)=S(SP-1)-1: SP=SP+1: GOSUB 200: REM RECURSE 230 SP=SP-1: F(S(SP-1))=S(SP-1)*S(SP): REM MEMOIZE 240 S(SP-1)=F(S(SP-1)): REM PUSH(RESULT) 250 RETURN