-
Notifications
You must be signed in to change notification settings - Fork 0
Actor model
From http://letitcrash.com/post/20964174345/carl-hewitt-explains-the-essence-of-the-actor
By Carl Hewitt
Fundamantal Unit of computations which embodies:
- processing
- storage
- communication
One ant is no ant... One actor is no actor, there has to be system of actors.
Fundamental properties of actor.
Everything is actor, even mailboxes? Where does the recursion ends?
Axioms
When actor receives message it can do:
- it can create more actors,
- send messages to actor it knows
- designate how you handle the next message (to me) (e.g. new account balance)
Concepturally 1 message at a time (**)
You can create a future while computation. Where you can pass around the future.
- Q: Is address of an actor the identify of an actor? A: No.
- Q: How do you tell if the two actors are the same? via address? No. No way to tell.
- Address != Identify
- Address (~~ capability)
(A1) ---> (A2)
and A1 sends messages m0 and m1 to A2
There's no order guarantees. m1 arrives before m0.
There's no channel. It's a direct communication. But the delivery is at "best effort", and no guarantee, and delivered at most once.
Non-determinism vs in-determinism. (00:18)
- start message
- go message
- stop mesage
How do actors relates to petri-nets? (00:21)
Synchronism (00:24)
Turing machine cannot do this ;-)
Has indetermincy inside.
What is:
- given
- has two inputs
- has two outputs
- it needs to output 1 but not both