So Parsell saves state between received chunks.<p>Why can&#x27;t it swap execution contexts, aka stacks? In other words, use coroutines and simply yield between chunks instead.<p>Wouldn&#x27;t that be more efficient and simpler? Is there some aspect in Rust that makes coroutines less desirable than (manually) saving and restoring state?