46: Mark S. Miller on Distributed Objects, Part 1
Description
Calling all programming language nerds! Distinguished computer
scientist Mark S. Miller (presently at Agoric)
joins us to tell us all about distributed object programming languages
and their history! We talk about actors, a bit of Xanadu, and little
known but incredibly influential programming languages like Flat
Concurrent Prolog, Joule, and E!
Actually there's so much to talk about that this episode is just part
one! There's more to come!
Links:
The actor model
(the core of which is sometimes distinguished from modified variants
by as being called "the classic actor model"). Long history;
Tony Garnock-Jones' History of Actors
is maybe the cleanest writeupThe
Agoric Open Systems papers
by Mark Miller and Eric Drexler are a good background into the
underlying motivations that got Mark into distributed objectsmarkm-talks
and
markm-more-talks
which are mostly about object capability security topicsAPConf keynote, Architectures of Robust Openness
by Mark S. Miller (YouTube copy)Mark diagraming a (certificate based) object capabilities flow at Rebooting Web of Trust 2017 (when Mark and Christine first met!)
The history of Mark and company performing civil disobediance to
make cryptography available to everyone is discussed in
When Encryption Was a Crime: The 1990s Battle for Free Speech in Software,
part of a four part seriesXerox PARC, which is where the Vulcan group happened (which is hard to find information on, sadly).
Mark mentions some of his colleagues who worked with him in the Vulcan group, including Dean Tribble (who worked on Joule, see more below) and Danny Bobrow who is famous for his groundbreaking program STUDENT (Natural Language Input for a Computer Proglem Solving System is an incredible read, detailing a program (written in lisp!) which could read algebra "word problems" written in plain English and solve them... in 1964!).
Flat Concurrent Prolog... it's tough to find things about! Presumably here's the paper Mark mentioned that Dean lead on Flat Concurrent Prolog from the Vulcan group which lead to Joule's channels. A bit more on (go figure) erights.org!
The Joule manual is still a very interesting read, if you can find the time. Talks about channels in depth.
Here's the Communicating Sequential Processes book by Tony Hoare, quite a nerdy read!
On capabilities and actors... we'll get to this more in the next episode,
but for now we'll leave the
Ode to the Granovetter Diagram
paper here (it's a truly amazing document!)