A formalization and implementation of distributed intensional programming

Paul Swoboda · UNSWorks (University of New South Wales, Sydney, Australia) · 2022

An intensional context is an expression of a desired state, or possible world, which can be used to map a set of differing versions of an entity to a single, concrete entity, called an extension. This thesis presents a novel solution to the problem of sharing structured, externalized state between the members of a software community, using a pervasive intensional context called an aether. The intuition for this solution is that the long-term success of any real community depends on the ability of its participants to share ideas and vital transactions, and in so doing, transform themselves. Unlike successful human communities, the status quo in distributed computing is a cult of obsessive protocol conformance, in which more time is spent, both in the execution of software and in its development, on carefully packaging and unpackaging content, than is actually spent on using the content. Components typically hide behind interfaces derived from the protocols through which they interact, a practice that places stifling limitations on cooperative productivity and on the extensibility and adaptability of distributed systems. To address these issues, we have constructed a robust, versatile infrastructure to support the creation and manipulation of shared context, as well as its distribution between members of a networked community. Further, we have developed extensive software to facilitate the integration of this context with existing development languages, and to analyze and interact with shared context in realtime. Using the tools and techniques presented in this thesis as a basis for development, the goal of intensional communities is now realizable.

Read the paper · More papers on PaperTik