Djnn/Smala: A Conceptual Framework and a Language for Interaction-Oriented Programming

Abstract : The persistent difficulty to develop and maintain interactive software has unveiled the inadequacy of traditional imperative programming languages. In the recent years, several solutions have been proposed to enrich the existing languages with constructs dedicated to interaction. In this paper, we propose a different approach that takes interaction as the primary concern to build a new programming language. We present Djnn, a conceptual framework based on the concepts of process and process activation, then we introduce Smala a programming language derived from this framework. We propose a solution for the unification of the concepts of event and data-flow, and for the derivation of complex control structures from a small set of basic ones. We detail the syntax and the semantics of Smala. Finally, we illustrate through a real-size application how it enables building all parts of an interactive software. Djnn and Smala may offer designers and programmers usable means to think of interactions and translate them into running code.
Document type :
Journal articles
Complete list of metadatas

Cited literature [54 references]  Display  Hide  Download

https://hal-enac.archives-ouvertes.fr/hal-01815222
Contributor : Laurence Porte <>
Submitted on : Monday, December 10, 2018 - 11:17:11 PM
Last modification on : Friday, May 24, 2019 - 3:20:10 PM
Long-term archiving on : Monday, March 11, 2019 - 5:48:08 PM

File

pacm2018-light.pdf
Files produced by the author(s)

Identifiers

Collections

ENAC | LII | DGAC

Citation

Mathieu Magnaudet, Stéphane Chatty, Stéphane Conversy, Sébastien Leriche, Célia Picard, et al.. Djnn/Smala: A Conceptual Framework and a Language for Interaction-Oriented Programming. Proceedings of the ACM on Human-Computer Interaction , Association for Computing Machinery (ACM), 2018, Proceedings of the ACM on Human-Computer Interaction, 2 (EICS), pp.1 - 27. ⟨10.1145/3229094⟩. ⟨hal-01815222⟩

Share

Metrics

Record views

217

Files downloads

127