* Graydon Hoare:

> - Erlang processes are 300 bytes (?) whereas Haskell tasks get 1k
                             words (per later correction)
> stack segments by default.

One more data point:

Depending on the implementation, Lua coroutines need around 1200 bytes
(Lua 5.1 on amd64) or 450 bytes (LuaJIT on amd64).  Lua coroutines
share a heap and are roughly equivalent to explicitly scheduled
threads (sometimes called one-shot continuations), but unlike threads,
they (and their stacks) are not automatically part of the heap's root
set.

Footprint for a totally independent Lua environment (called "state")
is somewhat larger.  There is no cross-state sharing, so all data
structures (such as module tables) and Lua code has to be loaded into
each state individually, further increasing the footprint.
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to