Interesting talk by Carl Hewitt: "Actors for cyberthings"


“The Internet of Things (IoT) is expected to surpass mobile phones
as the largest category of connected devices in 2018.” (Ericsson Mobility Report)

Connected to Hewitt’s presentation is the following report

Ok, for those that do not like to click (allas you even have to login with linkedin) a small excerpt. Maybe not the most interesting part but it shows a connection to Hewitt’s presentation.

One of the key elements to reactive programming is being able to execute tasks asynchronously. With the recent rise in popularity of FRP-based libraries, many people come to reactive having only known FRP before, and assume that that’s everything Reactive Systems have to offer. I’d argue that while event and stream processing is a large piece of it, it certainly is neither a requirement nor the entirety of reactive. For example, there are various other programming models such as the actor model (known from Akka or Erlang) that are very well suited toward reactive applications and programming.
A common theme in reactive libraries and implementations is that they often resort to using some kind of event loop, or shared dispatcher infrastructure based on a thread pool. Thanks to sharing the expensive resources (i.e., threads) among cheaper constructs, be it simple tasks, actors, or a sequence of callbacks to be invoked on the shared dispatcher, these techniques enable us to scale a single application across multiple cores. This multiplexing techniques allow such libraries to handle millions of entities on a single box. Thanks to this, we suddenly can afford to have one actor per user in our system, which makes the modelling of the domain using actors also more natural.