Raymond> If you see a typo or clear error, feel free to edit the files Raymond> directly. If you don't feel like reading the C code, the docs Raymond> list all known issues and include pure python equivalent code Raymond> for each function. Let me know if I omitted your favorite Raymond> function (tabulate, partition, etc). (Note, I've never used Haskell or SML, so have no direct experience with any of these iterators.) I fixed a couple typos, but have a few (more subjective) comments: * islice() - The description seems a bit confusing to me - perhaps a simple example would be useful. * takewhile()/dropwhile() - I assume these only return a prefix of their iterable arguments. Dropwhile()'s help suggests that, but takewhile()'s description is more vague about the notion. * imap() - It's not clear to me why it differs from map() other than the fact that it's an iterator. Can you motivate why it stops when the shortest iterable is exhausted and doesn't accept Non for its func arg? * loopzip() - It's not clear why its next() method should return a list instead of a tuple (again, a seemingly needless distiction with its builtin counterpart, zip()). * starmap() - How does it differ from imap() and map()? * times() - Why not declare times to take an optional argument to be returned? (In general, it seems like count(), repeat() and times() overlap heavily. Examples of their usage might be helpful in understanding when to use them, or at least when they are commonly used in their Haskell/SML roots environments.) Skip