: fib ( n -- ) { { [ dup 0 = ] [ drop 1 ] } { [ dup 1 = ] [ drop 1 ] } { [ dup 1 > ] [ dup 1 - fib swap 2 - fib + ] } } cond ;