5 ms·
That sounds like a solid basis for adding asymmetric coroutines as well, is that something you're thinking about adding? I like the philosophy and gumption sho
by samatman 5y ago
That sounds like a solid basis for adding asymmetric coroutines as well, is that something you're thinking about adding?
I like the philosophy and gumption shown by this project but coroutines aren't a feature I'd lightly give up.
Digging what I see so far!
- 4984 5y agoMiniVM uses coroutines already, every 1000 branches the vm will return to the scheduler. The Build system can accept CFLAGS+=-DVM_BRANCH_DEFER which makes MiniVM able to run part of bytecode up-to N instructions. It is not exposed on the insruction level yet tho. Would be quite easy to add.
- exikyut 5y agoIt might be interesting to be able to tell the VM to resume into code for exactly N instructions or branches. I can see instrumentation/debugging tooling using this with N=1 for example.
- samatman 5y agoAh thank you, that's very promising! It was the kind of thing I wanted to hear, I write Lua every day and four data types didn't appear to support 'thread'. I might just kick the tires on this over the weekend.
- rgrmrts 5y agoThat’s cool. Have you played around with that number? I’m curious how you pick that constant and what the trade offs are