@cpcloud 

> You can compute the space necessary for range/xrange arithmetically
>
> For arbitrary generator expressions you cannot.

We are very explicitly talking about generators with a `__len__`. How the length is calculated (implemented in `__len__`) is pretty much irrelevant.

On a related note, the question of the size of iterators motivated a PEP 424 and might be more frequent than one thinks.