Lazy lists are nice if you don't need the entire thing - if you need the entire thing, it hardly matters.
I heartily disagree. If the list is large and you don't need the entire thing at once, then being lazy saves you a lot of memory, and can be the difference between getting an answer a minute later, and having your program crash. (For instance that's why you want to use while to loop through a large file rather than for.)
Combining lists quickly creates a combinatorial explosion where you really don't want it all in memory if you don't need it there.