You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I just had an interesting experience of writing a world program without and on-tick, and not being able to convince the REPL that it had stopped.
This is because in between event handlers, the world is dormant, and the way we pause/break programs needs the program to wake up and notice its been paused in order to notify the world of the break.
This comes from our re-use of pause as break. Break should be a distinct operation that immediately calls the failure continuation of the current evaluation (so it knows that its done, without relying on timeouts), and simply blocks any new computation of the same run that starts later.
I think pause still needs to have the behavior it has now, because it needs access to the actual continuation of the computation in order to restart it. It might be possible to make this asynchronous as well, but there aren't any known issues with the behavior of pause so this isn't as urgent.
The text was updated successfully, but these errors were encountered:
I just had an interesting experience of writing a world program without and on-tick, and not being able to convince the REPL that it had stopped.
This is because in between event handlers, the world is dormant, and the way we pause/break programs needs the program to wake up and notice its been paused in order to notify the world of the break.
This comes from our re-use of
pause
asbreak
. Break should be a distinct operation that immediately calls the failure continuation of the current evaluation (so it knows that its done, without relying on timeouts), and simply blocks any new computation of the samerun
that starts later.I think
pause
still needs to have the behavior it has now, because it needs access to the actual continuation of the computation in order to restart it. It might be possible to make this asynchronous as well, but there aren't any known issues with the behavior ofpause
so this isn't as urgent.The text was updated successfully, but these errors were encountered: