@bellinitte that's definitely the better way, I keep on re-implementing it too to keep it fresh in my mind.
I've recently started thinking about the VM in a completely different way. Instead of going in the traditional POP/PUSH implementation, I've tried looking at it like a register machine with a conveyor belt.
https://git.sr.ht/~rabbits/uxn/tree/main/item/src/uxn-fast.c
Also, if you need here's the test rom that I use to verify my implementations:
https://git.sr.ht/~rabbits/uxn5/tree/main/item/etc/tests.tal
Daikon is the perfect name
@neauoire I'm taking some inspiration from your uxn-fast, it's so neat. I love the way you captured all this repetition and complexity into these little macros, especially how the keep mode works.