Actor Model

Actor Model We’ll explore a concurrency model that makes writing performant, concurrent software much easier than traditional approaches. I’m talking about the Actor Model. In the following sections, we’ll dive into what it is and how it simplifies concurrency challenges that developers dread. History Actor model was introduced in 1973 by Carl Hewitt, Peter Bishop and Richard Steiger of MIT in their paper “A Universal Modular Actor Formalism for Artificial Intelligence”. The Artificial Intelligence being talked about is not the GenAI that we talk about but about computational systems in general. It was influenced by programming languages like Lisp, Simula, Smalltalk(which is still considered by many as one of the best Object Oriented Language implementation). ...

April 12, 2025 · 8 min

Communicating Sequential Processes

We talk about different concurrency models and although there are several, two of them standout for being easy to reason about and relatively bug free. Those are CSP(Communicating Sequential Processes) and Actor Model. In this article, we will talk about CSP and how it handles concurrency. Thread-based Concurrency Thread-based concurrency is the model that all programming languages usually implement. At its core it uses threads which are similar to OS level processes but share the memory, file and network resources of the parent process. Operating system schedules the threads and handles the multiplexing between the different threads. In this model, programming languages usually do not handle the scheduling of the threads. ...

April 6, 2025 · 5 min

Why I started this blog?

Like many software engineers, I’ve often wondered why engineers blog. Is it for reputation? To show off? To market themselves? I used to see all these tech blogs and think, “Where do these people find the time? How do they do this amazing work? How can they be so articulate?”. The above reservations I had always put me off from having my own. But then a question struck, what if these people had the same reservations? I cannot count number of times I was unstuck from the problem at hand by some obscure or a rather well known blog post. I cannot even fathom how much harder it is to learn just from the docs. I cannot quantify how much I learned through some of those blogs. There is nothing better than learning by doing and having to face a problem, but I think reading what other people’s problems are and what they did to solve it comes a close(maybe not very close) second. ...

April 6, 2025 · 2 min