! problem 2: sum of even valued fib numbers less than 4 million :: fibs ( max -- seq ) { 0 1 } [ dup second max < ] [| p | p second dup p first + 2array dup ] produce nip [ first ] map ; : problem2 ( max -- soln ) fibs [ even? ] filter sum ; ! 4000000 problem2 . ! => 4613732