On Sun 12 Mar 2017 15:49, Mathieu Lirzin <m...@gnu.org> writes: > Here is my proposal for the Google Summer of Code 2017.
Looks great to me. FWIW I think you may want to use Fibers in Cuirass. Sometimes a web API request might need to "fork" off a number of tasks, and Fibers lets you do that pretty easily, and provides nice communications mechanisms for inter-fiber communication like channels and condition variables. It also prevents one long API request from starving other API users. Also its abstractions are thread-safe, and it enables parallel speedups by using all available cores. Right now Fibers doesn't have explicit support for subprocess events like child-died, etc, though it can do concurrent access to multiple pipes at once. So there's some work to do here. A reference: https://github.com/wingo/fibers/wiki/Manual Specifically see the "web server" notes in the Examples section. Fibers is in Guix as "guile-fibers". Happy hacking, Andy