2 ms·
That's the exact approach I'm considering for the new engine I mentioned! Although that strategy enables you to store and recover the state of a game, it doesn
by fleabitdev 2y ago
That's the exact approach I'm considering for the new engine I mentioned!
Although that strategy enables you to store and recover the state of a game, it doesn't give you the ability to inspect a snapshot of that state. How can you print the card which has just been played, if that data only exists as an argument in the call stack of a suspended async function? In the same way that you can't inspect the local variables captured by a closure, mainstream languages also provide no way to inspect a suspended stack frame.
This problem interferes with debugging, consistency checks (e.g. hashing the game state to check that two clients are in sync), and unit testing.