Hi :) Thanks for working on the RTL VM!
First of all, sorry about that linker error. I'm trying to make RTL programs more debuggable by hacking on the linker, so that it emits proper debugging information. I should have caught that typo though! I think however that the strategy of making the VM somehow more resilient is not going to work. There are so many ways that invalid instructions can make the VM fail -- and you have no idea what you can rely on if those invariants fail. So it doesn't seem to me that it's possible to do that job well at all, and for that reason it seems to me that we shouldn't try very hard. So my answer for dealing with VM issues would be to try to narrow down the problem, then use instruction-level traps to print instructions as you go. Once you find the problem you probably won't be able to recover; oh well. At least you would know how you got there. And I don't know how you've been able to get as far as you have with the deplorable state of the debugging infrastructure. You can't even disassemble a function you just made! I'll be working on that this week; we'll see what happens. So in summary, dunno. Surely there is some way we can do things better, but I wanted to register my skepticism for this line of hacking. What do you think? Cheers, Andy -- http://wingolog.org/