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
The underlying scheduler and unit of concurrency for Genie will be Riot and its actor model respectively.
Some thoughts off the top of my head:
Effects i.e. IO or CPU-bound tasks should be able to be handled asynchronously by putting them on a lightweight ephemeral process from Riot, and upon completion push a result into some sort of MutationQueue that will be drained on the main thread's event loop. This keeps the main model thread safe but allows us to utilise multiple cores.
The text was updated successfully, but these errors were encountered:
Counter point, does genie itself need to be running from within Riot? Would it perhaps be better to simpltyrun genie as a process within the user's Riot.run which would mean it would not be tied to any one scheduler.
Would programming against https://github.com/ocaml-multicore/picos make it scheduler agnostic? Can we use that to replace async runtimes later on? Is there any point to that or is it meaningless abstraction and work?
The underlying scheduler and unit of concurrency for Genie will be Riot and its actor model respectively.
Some thoughts off the top of my head:
MutationQueue
that will be drained on the main thread's event loop. This keeps the main model thread safe but allows us to utilise multiple cores.The text was updated successfully, but these errors were encountered: