I cannot speak for Rust, but I can speak for Go. The actor model is almost the reverse of how Go handles concurrency. Instead of sending to named actors, in Golang you name your pipes (or channels). Then you handle these pipes as first class citizens and routines can choose to receive or send on them. e.g.
1. In your main routine you build a channel of ints (noticed they're typed) named `x`
2. You hand `x` and an integer i (incremented by one for each new routine) to ten routines which will double that number and send the result down `x`
3. Your main routine then receives on `x` and builds a list of results. It hasn't blocked on the doubling operations for each integer `i` because you sent each of those operations in a new routine.
Ignoring the fact I haven't managed closing the channel `x` you can get the gist of how channels are named and passed around.
I can't say what the alternative would be in Rust, but I hope that sheds more light on Go!