This has come up at least a couple times in different contexts and I think this would be a cool idea with some interesting applications. Plus @keynmol may have volunteered himself to take this on 😉
Why:
- JVM:
IO#unsafeRunSync in single-threaded environments (e.g. AWS lambda) without the penalty of creating threads or shifting.
- JS:
unsafeRunSync (!!) via a new "TemporalSyncIO" data type that implements Temporal and Sync. @djspiewak pointed out this would be similar to the microtask loop (with the addition of timers).
- Native: when Native rolls around, IIUC this should give us a single-threaded runtime essentially for free.
This has come up at least a couple times in different contexts and I think this would be a cool idea with some interesting applications. Plus @keynmol may have volunteered himself to take this on 😉
Why:
IO#unsafeRunSyncin single-threaded environments (e.g. AWS lambda) without the penalty of creating threads or shifting.unsafeRunSync(!!) via a new "TemporalSyncIO" data type that implementsTemporalandSync. @djspiewak pointed out this would be similar to the microtask loop (with the addition of timers).