[Haskell] space behaviour of lazy recursive lists