On 05/03/2016 04:31 AM, Dmitry Gutov wrote: > The above example seemed to me to be the prime use case for generator.el > (e.g. lazily parsing output from an asynchronous process), so this > is disappointing. Actually, I take this back. - generator.el doesn't seem useful for parsing output from an asynchronous process because it has no way to indicate whether the process has new output, or to return control back to Emacs while the process is still running but has no new output. It seems to call for a different abstraction. - with-current-buffer turned out not to be so essential. Nor save-excursion. I've reimplemented xref--buf-pairs-iterator using iter-lambda but couldn't get the full benefit of the package because that function also needs a way to reliably clean up resources. The result is a bit more comprehensible, but also longer, so I'm hesitant to use it (attached). So sum up, maybe this bug can be closed, but I'd like to see Daniel's opinion. Supporting with-current-buffer might turn out to be more essential in other cases.