module Laziness where

slowFib x y = x : y : zipWith (+) (slowFib x y) (tail (slowFib x y))
fastFib x y = self where self = x : y : zipWith (+) self (tail self)
