another cool rust project messing with coroutines is effing-mad [0] which implements an effects system on top of them.
on the actual implementation, i’m curious as to why you return the coroutine boxed, rather than as an RPIT? i feel that could potentially lead to some missed optimizations, but probably nothing significant.