Djnn: A Process Oriented Programming Language for Interactive Systems
Résumé
The most popular programming languages (Java, C++, Objective-C, Python, etc.) and toolkit (Qt, Java, FX, etc.), commonly used for building interactive systems, are still based on the paradigm of sequential programming originally built for computation. In this tutorial we present djnn, a new way of programming interactive systems that takes as its primary concept coupling between processes. We will take as an example the building of a well-known component of an aircraft cockpit, the primary flight display. The first part of this tutorial will be dedicated to the presentation of the basic principles of djnn, its main concepts and how to build a simple program. Then we will introduce the various control structures and provide an overview of the existing libraries of djnn components. We will pursue by showing how to import graphical components from a SVG file, and how to connect various input modalities. Finally, we will demonstrate a rapid prototyping process through the integration of increasingly realist graphical components.