On Thursday, 22 December 2016 at 18:04:51 UTC, Observer wrote:
(1) Serve as a convenient breakpoint handle in the debugger, perhapsas a kind of centralized this_cannot_ever_happen() function. (2) conditionally_die(conditions); (3) Sleep for some run-time-computable length of time.(4) Yield the thread so other threads can take execution priority. (5) Yield the entire process so other processes can take executionpriority.(6) Wait for an external trigger (perhaps a hardware interrupt, forinstance). (7) Invoke a pass of garbage collection.
A function that does any of that cannot be pure.
