This module doesn't appear to be very lazy to me. For example, in ghci, *Util.LazyNum List> genericLength (1:2:undefined) > (1 :: Nat) *** Exception: Prelude.undefined How is this module intended to be used?