Subject: bug#57635: 29.0.50; Look into using generator.el's CPS machinery to replace 'eshell-do-eval'

From: Jim Porter <[email-masked]>
Date: Tue, 6 Sep 2022 20:58:00 -0700

In order to make long-running Eshell commands behave more-nicely, Eshell 
uses iterative evaluation of many commands so that it can return control 
back to the rest of Emacs. This has a lot of similarity to how 
generator.el works.

This would hopefully help prevent obscure bugs in Eshell, such as 
bug#54190. In that bug, Stefan mentions[1]:

> Looks like a bug somewhere in the `eshell-do-eval` machinery, yes.
> Until we find the problem (or rewrite `eshell-do-eval` on top of the CPS
> converter of `generator.el`), I think reverting this change (and adding
> a comment pointing to this bug) sounds like a great plan.

[1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=54190#17