* We have a full supervision tree so actors can monitor other actors for exits and unhandled panic!s (at least the ones that can be caught)
* The actor lifecycle is handled for you in a simple single-threaded, message handler primitive
* You have a mutable state with each message handling call, so you have an easy way to create stateful actors and update that state as messages are processed
* Actors talk to other actors by message passing, but there are remote-procedure-calls (RPCs) so actors can "ask a question" to another actor and wait on the reply.
* A lot of the concurrency primitives are handled by the framework, such as cancellation/termination of actors (both graceful and forceful)
* A Factory primitive in order to formulate distributed processing pools with multiple job routing options
* Early but stable support for a distributed epmd-like cluster environment, where you can talk to actors over a network link. It's an additional crate (ractor_cluster) that builds on ractor to facilitate the inter-connection between nodes and support remote casts and calls to actors on a remote node.
We're openly seeking feedback, so please feel free to utilize the library and let us know if there's anything you find missing or doesn't work as expected!