Hi all,

I've recently been looking into the go concurrency model to see how it
compares to asyncio and an interesting concept caught my attention: go
generators.

It's quite similar to asynchronous generator, with a bit of extra
concurrency.

You can find a small write-up comparing the two concepts [1] and a possible
implementation of go-style generators using asyncio [2].

[1]: https://gist.github.com/vxgmichel/4ea46d3ae5c270260471d304a2c8e97b
[2]: https://gist.github.com/vxgmichel/8fc63c02389dc6807206dec7ede9eb99

My conclusion is that go-style generators are quite useful in the context
of a pipeline of generators producing and processing values asynchronously.

This research was motivated by my work on aiostream [3], an asynchronous
version of itertools, that does not benefit from this kind of optimization
(yet).

[3]: https://github.com/vxgmichel/aiostream

Hope you'll find this interesting,

Cheers,
/Vincent
_______________________________________________
Async-sig mailing list
Async-sig@python.org
https://mail.python.org/mailman/listinfo/async-sig
Code of Conduct: https://www.python.org/psf/codeofconduct/

Reply via email to