How does this work with garbage collection? Is the GC per-process ("fiber"), like in Erlang?
How does this work with garbage collection? Is the GC per-process ("fiber"), like in Erlang?
The JVM's GC isn't per actor (I know actors are called processes in Erlang, but let's keep the nomenclature consistent), but its GC is extremely advanced, and some implementations work on a per-thread basis. The ramifications are that we can't offer the same level of isolation as Erlang, at least not on HotSpot. An actor could theoretically produce a particular kind of garbage that will cause a GC pause to the entire system. But other than isolation, the JVM is very performant (much more than Beam), and handles concurrency extremely well.
I don't understand your last question (on load distribution).
I'm excited to see how you guys go about trapping errors and such, as you mention in the "next steps."
Thanks for answering my small questions.