Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relation to Actors #3

Open
bblfish opened this issue Aug 22, 2021 · 0 comments
Open

Relation to Actors #3

bblfish opened this issue Aug 22, 2021 · 0 comments

Comments

@bblfish
Copy link

bblfish commented Aug 22, 2021

Watching David Spivak's course (see my twitter thread) which led me to this book, I came to wonder very quickly if Poly as Dynamical Systems could not be the mathematics for Actor based systems. That is an important question to me as I am using Actors to program a web server, and so understanding the relation would give me extra energy to read the books, and correct typos :-) If it did fit it could perhaps provide the maths for a general theory of the web.

The inventor of Actor Systems was Carl Hewitt and he wrote up a very personal explanation of them in a 2010 paper where he writes that it integrates:

1.the lambda calculus
2. interrupts
3. blocking method invocation
4. imperative programming using locks
5. capability systems
6 co-routines
7. packet networks
8. email systems
9. Petri nets
10. Smalltalk-72
11. Simula-67
12. pattern-directed invocation (from Planner)

I first came across an actor system using a language April by Keith Clark in 1993 doing my Masters, that could send messages to actors on the internet around the world as tuples. I am now using a different actor system - Akka - to build a Web Server used by many internet behemoths such as Paypal, that use it to execute over 1 billion transactions a day on relatively little hardware.

Akka Actors

  • form open systems,
  • maintain state
  • have names (URLs) that can be used to address them
  • can be typed by the messages they receive,
  • they can change their own behavior
  • the whole point is that they are individual execution contexts

Actor systems are excellent tools to build streaming libraries, which can be composed then using symmetric monoidal category like diagrams.

@alcestes has been working on pushing typesafe actors to the next level and I think he has a very good understanding of the theory of actors. I am not sure how much category theory he knows though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant