Accéder directement au contenu Accéder directement à la navigation
Article dans une revue

Dependent vector types for data structuring in multirate Faust

Abstract : Faust is a functional programming language dedicated to the specification of ex- ecutable monorate synchronous musical applications. To extend Faust capabil- ities to important domains such as FFT-based spectral processing, we introduce here a multirate extension of the core Faust language. The novel idea is to link rate changes to data structure manipulation operations. Creating a vector-valued output signal divides the rate of input signals by the vector size, while serializ- ing vectors multiplies rates accordingly. As duals to vectors, we also introduce record-like data structures, which are used to gather data but do not change sig- nal rates. This interplay between data structures and rates is made possible in the language static semantics by the introduction of dependent types. We present a typing semantics, a denotational semantics and correctness theorems that show that this data structuring/multirate extension preserves the language synchronous characteristics. This new design is under implementation in the Faust compiler.
Type de document :
Article dans une revue
Liste complète des métadonnées

https://hal-mines-paristech.archives-ouvertes.fr/hal-00628564
Contributeur : Claire Medrala <>
Soumis le : lundi 3 octobre 2011 - 16:05:49
Dernière modification le : jeudi 24 septembre 2020 - 16:36:01

Identifiants

Citation

Pierre Jouvelot, Yann Orlarey. Dependent vector types for data structuring in multirate Faust. Computer Languages, Systems and Structures, Elsevier, 2011, Volume 37 (Issue 3), pp.113-131. ⟨10.1016/j.cl.2011.03.001⟩. ⟨hal-00628564⟩

Partager

Métriques

Consultations de la notice

239