1.1. Organization of this document
This document is organized into three parts.
PART I gives a high level overview of the Perspectives Distributed Runtime. It is organised around a functional decomposition of the Perspectives Distributed Runtime into four parts:
-
The parser / compiler
-
The Functional Reactive Pattern (FRP)
-
State change through assignment
-
Synchronization
PART II is devoted to the design of the Perspectives Language. It ranges from high level conceptual overviews - such as the type system - to implementation details. The topics covered are:
-
The type system
-
Identifiers and variables
-
Perspectives
-
Queries
-
Aspects
-
Model source texts
PART III goes into the nitty-gritty of the implementation. Expect the most technical issues here. We cover:
-
The architecture of the PDR and MyContexts
-
The mechanisms of state change
-
The workings of state synchronization between peers
-
The Foreign Function Interface (FFI)
PART IV discusses a number of models that are essential to the functioning of MyContexts, such as:
-
model://perspectives.domains#System
-
model://perspectives.domains#CouchdbManagement
PART V is a collection of modelling practices, often worked out as a related set of role- and context aspects Some examples:
-
the Guest-pattern, allowing any user to take part in a context;
-
the modelling of Notifications;
-
a pattern to insert a context initiated by a peer into a top level context.
PART VI is on the design of MyContexts, the end user program that adds a user interface to the PDR.