in reply to Infinitely Lazy

You might want to take a look at MJD's article on streams. It provides motivation, background and some high-quality code for streams / infinite lists.