IN: fibo USING: math kernel sequences locals prettyprint ; : next-fib ( x y -- y x+y ) swap over + ; :: fib-produce ( max -- seq ) 1 1 [ next-fib dup max <= ] [ dup ] produce 2nip ; 4000000 fib-produce [ even? ] filter sum .