A Reactive Extension of the OpenMusic Visual Programming Language - Archive ouverte HAL Access content directly
Journal Articles Journal of Visual Languages and Computing Year : 2014

A Reactive Extension of the OpenMusic Visual Programming Language

(1) , (1, 2)


OpenMusic (OM) is a domain-specific visual programming language designed for computer-aided music composition. This language based on Common Lisp allows composers to develop functional processes generating or transforming musical data, and to execute them locally by demand-driven evaluations. As most historical computer-aided compositon environments, OM relies on a transformational declarative paradigm, which is hard to conciliate with reactive data-flow (an evaluation scheme more adequate to the development of interactive systems). We propose to link these two evaluation paradigms in a same and consistent visual programming framework. We establish a denotational semantics of the visual language, which gives account for its demand-driven evaluation mechanism and the incremental construction of programs. We then extend this semantics to enable reactive computations in the functional graphs. The resulting language merges data-driven executions with the existing demand-driven mechanism. A conservative implementation is proposed. We show that the incremental construction of programs and their data-driven and demand-driven evaluations can be smoothly integrated in the visual programming workflow. This integration allows for the propagation of changes in the programs, and the evaluation of graphically-designed functional expressions as a response to external events, a first step in bridging the gap between computer-assisted composition environments and real-time musical systems.
Fichier principal
Vignette du fichier
om-reactif-jvlc-personal.pdf (504.57 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-00965747 , version 1 (16-05-2017)



Jean Bresson, Jean-Louis Giavitto. A Reactive Extension of the OpenMusic Visual Programming Language. Journal of Visual Languages and Computing, 2014, 25 (4), pp.363-375. ⟨10.1016/j.jvlc.2014.03.003⟩. ⟨hal-00965747⟩
507 View
561 Download



Gmail Facebook Twitter LinkedIn More