>Are you really sure, that for such "application freeze problem" it
>would be useful to restart with direct RAM/stack copy?
Dumping VM state to disk is a very commonly used technique (see V8 snapshots and any common lisp).
I would like to clarify for the thread though; my original question was about duplicating a coroutine at runtime along the lines of being able to run from a yield point multiple times, not marshalling a lua thread to a binary format. I am nevertheless glad this was brought up because it also a very cool idea and feels like a natural upgrade to string.dump.