OK, I'm getting close to caving and publishing https://github.com/sminez/crimes as an actual crate if I can round out the documentation and test suite...
Things that have changed my mind:
1. https://docs.rs/genawaiter/latest/genawaiter/ is already a thing, using a somewhat similar approach? But it looks like its abandoned and makes use of proc macros. Either way, it looks like there's prior art in this space and I _think_ what I've got is a little neater? Not sure about performance yet though.
2. The more I add QOL methods and helpers to this, the more it feels like an actual nice API(!)
3. Now I _really_ want to use it inside of ad and see what sorts of mischief I can get up to
All that said, I think I'll write a follow up to https://www.sminez.dev/socrates-is-a-state-machine/ first to try and encourage people to take a look at the design and tear me a new one when they find issues in it.
If that goes reasonably well, then please direct your "why have you done this?!" complaints to @oac as he's the one encouraging me
@fasterthanlime not sure if you pay attention to mentions, but given that this was inspired by your recent article I'd like to give you credit (/ hold you partly responsible depending on your point of view!)