[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#23430: 25.0.93; iter-defun does not support special form save-curren
From: |
Dmitry Gutov |
Subject: |
bug#23430: 25.0.93; iter-defun does not support special form save-current-buffer |
Date: |
Fri, 6 May 2016 01:46:54 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1 |
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.
xref-gen.diff
Description: Text Data