Skip to content

Actor model

illyfrancis edited this page Mar 3, 2014 · 3 revisions

From http://letitcrash.com/post/20964174345/carl-hewitt-explains-the-essence-of-the-actor

Actor basis

By Carl Hewitt

What is an actor?

Fundamantal Unit of computations which embodies:

  1. processing
  2. storage
  3. 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:

  1. it can create more actors,
  2. send messages to actor it knows
  3. 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)

Arbitor (00:25)

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

Clone this wiki locally