Skip to content
0:00 / 0:00

#actormodel#carlhewitt#erikmeijer

Hewitt, Meijer and Szyperski: The Actor Model (everything you wanted to know...)

jasonofthel33t

11K subscribers • 8 videos on Hallway

YouTube
  • Recommended by 7 people: 5 on Hacker News, 1 in engineering communities and 1 curated list.
  • A classic. People kept recommending it from 2017 to 2025.
  • Presented by Carl Hewitt, creator of the Actor Model

Advanced. Deep dive for people who know the field.

130K views13 years ago7 recommendations

Distributed systemsSoftware designConcurrency and parallelismSoftware architectureFunctional programming

Carl Hewitt, Erik Meijer, and Clemens Szyperski discuss the foundations, history, and implementation details of the Actor Model.

Cross posted from channel9.msdn.com/Shows/Going+Deep/Hewitt-Meijer-and-Szypers…. At Lang.NEXT 2012, several conversations happened in the "social room", which was right next to the room where sessions took place. Our dear friend, Erik Meijer, led many interesting conversations, some of which we are fortunate enough to have caught on camera for C9. We'll begin with these Expert to Expert episodes with a "standing" conversation (participants stand comfortably close to the whiteboard) with computer scientists Carl Hewitt, Visiting Professor at Stanford University, creator of the Planner programming language, inventor of the Actor Model (the topic of this conversation), Clemens Szyperski, an MSR scientist working in the Connected Systems Group and Erik. What are actors, exactly? No, really. What are they? When is an actor an actor? Everything you wanted to know about actors, but we're afraid to ask... It's all right here. Big thanks to Carl, Clemens and Erik. This is an excellent E2E(2E)!

Why it's here

7 people recommend this

What people say. Highly recommended as a masterclass on the Actor Model featuring its original creator.

Moments people linked to

u/agumonkeyin r/compsci • Recommends

Hewitt, Meijer and Szyperski: The Actor Model (2012)

napsterbron Hacker News • Recommends

On “A few notes on message passing”

I'm sorry to go completely off-topic here, but I just wanted to say thank you! Your discussion0 with Meijer and Szyperski was mind-blowing and taught me a lot about the actor model. This was, hands down, one of the best classes I've ever had. Thanks for sharing this knowledge. 0 - link to this video

napsterbron Hacker News • Recommends

On “Carl Hewitt has died [pdf]”

May he RIP. I first heard about Hewitt after watching this0 conversation about the actor model. It's truly a masterclass. For those who want to learn more about the actor model, or simply have a fond memory of ProfHewitt, I highly recommend it. 0 - link to this video

TowerTallon Hacker News • Recommends

On “Carl Hewitt has died [pdf]”

This is one of my favorite tech talks. Hewitt, Meijer and Szyperski: The Actor Model (everything you wanted to know but are afraid to ask) link to this video

mateszon Hacker News • Recommends

On “Pony: An actor-model, capabilities-secure, high-performance programming language”

For anyone interested in a deeper dive into the foundations of the Actor Model, I highly recommend this entertaining 45-minute explainer by Carl Hewitt, one of the model’s original pioneers: link to this video

awesome-talkscurated list on GitHubRecommends

Under “Software Design”

The Actor Model by **Hewitt, Meijer and Szyperski** (Lang.NEXT 2012) 42:34

prodtorokon Hacker News • Recommends

On “Get to Know the Actor Model with JavaScript”

For those who like to learn from videos, here is an interview/lesson from Carl Hewitt (he introduced the model): link to this video

helge9210on Hacker News • Recommends

On “Actor system for the JVM developed by Electronic Arts”

> so different in an actor vs a queue with workers In short: different computational model -- Actor model vs. Communicating sequential processes. This really helped me: link to this video Edit: added link to video

u/cxzukin r/ProgrammingLanguages • Mentions

On “Resources on concurrent PL semantics?”

Hi Lich, Absolutely, its quite a common misconception that goes back to another famous argument (Hewitt vs Hoare). Before we jump into that, a quick summary of Indeterminacy. **Indeterminacy** arises with asynchronous messaging. Due to the delay added while that message is in transit, the state of the sender could have changed an arbitrary (unbounded) number of times. every reply is essentially "All News is Old News". This is impossible to model in a Turing machine. Wiki has a short list of the differences between CSP and the Actor Model. lets focus on the main one: >CSP message-passing fundamentally involves a rendezvous between the processes involved in sending and receiving the m…
4View on Reddit

noblethrasheron Hacker News • Mentions

On “Why WhatsApp Only Needs 50 Engineers for Its 900M Users”

Indeed, Joe Armstrong once said that he believes Erlang to be the only OO language according to Alan Kay's idea 1. Also, let's not forget to give credit to Carl Hewitt who came up with actors in the first place 2. 1 link 2 link to this video

ahasanion Hacker News • Mentions

On “Writing an OS in Rust: Async/Await”

What do you think about hierarchical state machine 1 ? >Has it already been through state X? Like everything else, logging >Will it come back to this state in the future? Mentioned in the comment before, there is a transition graph that you can do static analysis on, note that you might run into a halting problem >Is there a route from state Y to state Z? There is a transition graph >State machines are effectively goto writ large... quoting Prof Carl Hewitt of Actor Model, "goto is harmless"2, function/procedure call is a goto, much like sending an named event while in particular state with/out parameters 1 link 2 link to this video note: edited for formatting

TowerTallon Hacker News • Mentions

On “Ask HN: Are there senior devs who liked switching from static to dynamic typing?”

…ice Fabric is Microsoft Secret Sause. It is the technology that underpins the Azure Platform itself. Service Fabric has a beautiful actor model that makes the development of cloud-based applications as simple as writing a single threaded console application. Service Fabric and Kubernetes: community comparison 1 The Actor Model 2 1 link 2 link to this video…

u/cxzukin r/ProgrammingLanguages • Mentions

On “Is Go's concurrency model suitable for distributed systems and for microservices?”

I'm not sure I can recommend any books, Bounded Non-Determinism is as far as a Turing Machine can express. It'll be defined and referenced in those works. Carl Hewitt's 1972 Actor Model paper will definitely cover Indeterminacy. Heres a great video on a summary of the actor model [video https://en.wikipedia.org/wiki/Unbounded\_nondeterminism is a good starting point. You'll see a long list of big names that have covered this subject. There was a big "disagreement" between Dijkstra and Hewitt in the late 70s. Dijkstra didn't want to give up the properties in the bounded non-determinism - so you can most likely find some information on the pro's and con's of both sides from some of that wo…

u/cxzukin r/ProgrammingLanguages • Mentions

On “Some introduction materials to the actor model?”

The YouTube video link to this video presented by Carl Hewitt is a great introduction to the Actor Model. If you're looking for something more technical - I believe I've read all of the Actor Model papers. With the exception of one paper removing the idea of the mailbox (and readded in a later paper), they are more or less consistent and build upon each other. The 1972 paper is still a good place to start.

Christopher Creutzigon Software Engineering Stack Exchange • Mentions

On “What's the next level of abstraction?”

I think the actor model is missing from the list of candidates. Here's what I mean by Actors: independent entities that receive messages, and when receiving a message, may create new actors, update some internal state for the next message, and send out messages This model is something beyond deterministic Turing machines, and is actually closer to our real-world hardware when looking at concurrent programs. Unless you employ extra (costly) synchronization steps, these days, when your code receives data, that value may already have changed on the other side of the same die, maybe even inside the same core. Short discussion/introduction: link to this video