A dissertation on the rationale, philosophy, and goals of E and related systems
Apologies for the wide distribution, but elements of this dissertation are
germane to each of these lists. Feedback appreciated, but please reply to me
or on an appropriate list, rather than using "Reply all". The copyright notice
is interim, until I figure out what open license I want on this.
Towards a Unified Approach to Access Control and Concurrency Control
When separately written programs are composed so that they may cooperate, they
may instead destructively interfere in unanticipated ways. These hazards limit
the scale and functionality of the software systems we can successfully
compose. This dissertation presents a framework for enabling those
interactions between components needed for the cooperation we intend, while
minimizing the hazards of destructive interference.
Great progress on the composition problem has been made within the object
paradigm, chiefly in the context of sequential, single-machine programming
among benign components. We show how to extend this success to support robust
composition of concurrent and potentially malicious components distributed
over potentially malicious machines. We present E, a distributed, persistent,
secure programming language, and CapDesk, a virus-safe desktop built in E, as
embodiments of the techniques we explain.