[cap-talk] Ambient References (was: Communicating Event Loops with Promises (was: Understanding capabilities in a web-desktop setting))
Mark Miller
erights at gmail.com
Tue Aug 12 13:40:53 CDT 2008
On Tue, Aug 12, 2008 at 11:02 AM, Mark Miller <erights at gmail.com> wrote:
> A very interesting new system based on "communicating event loops with
> promises" is AmbientTalk/2
> <http://prog.vub.ac.be/~tvcutsem/publications/phd_tom_van_cutsem.pdf>
> <http://prog.vub.ac.be/amop/> <http://code.google.com/p/ambienttalk/>.
> They would also like to move this system towards object-capabilities
> someday. Check it out!
I should have mentioned that I was on Tom's "jury" for his thesis -- a
bit like being on his thesis committee if I understand it. (Tom's
thesis is the first link above.) After Tom passed his private defense
(quite well, btw), I wrote:
The significance of Tom's work is best understood with some the
historical context.
In the original pure untyped lambda calculus, all values are
functions, and all interaction is function application. Similarly, in
pure dynamically typed object languages going back to Smalltalk and
Actors, all values are objects and all interaction is by message
passing. These pioneering systems discovered that lambda and object
abstraction *mechanisms* could express *patterns* of data-,
procedural-, control-, and communication-abstractions. Each of these
discoveries reveals a "continent" of patterns to be explored and
explained by later expeditions. Today, data, procedural, and control
abstractions are well explored and settled territory -- explained by
hundreds of books and supported well by dozens of languages and
libraries. However, communication abstraction remains a mostly
undiscovered frontier.
Just as data abstraction enables user-defined objects to act like
primitive data types, but "smarter", the ability to handle
first-class messages generically enables user-defined objects to act
like primitive object-references, but "smarter". Prior to Tom's work,
this has been explored well only in the contexts of distributing
objects over mostly reliable networks, and of limiting communication
to prevent inappropriate access. Tom's is the first extensive
object-based exploration in an opposite direction: providing adequate
and well-enough behaved communication abstractions in contexts -- such
as mobile ad hoc networks -- where connectivity seems too
unpredictable to be of much use. Tom explores how previous special
purpose solutions, such as event-distribution channels, can be
expressed as simple object patterns representing discovery-based
connectionless smart object-references, i.e., ambient references. In
addition to his very readable dissertation, Tom co-created the ideal
expository tool to explain his discoveries: a programming language,
AmbientTalk/2, supporting all four forms of abstraction well in a
single integrated fabric.
--
Text by me above is hereby placed in the public domain
Cheers,
--MarkM
More information about the cap-talk
mailing list