Skip to Main content Skip to Navigation
Journal articles

Dependent Vector Types for Multirate Faust

Abstract : Faust is a functional programming language dedicated to the specification of executable monorate synchronous mu- sical applications. To extend Faust capabilities to domains such as spectral processing, we introduce here a multi- rate extension of the core Faust language. The key idea is to link rate changes to data structure manipulation op- erations: creating a vector-valued output signal divides the rate of input signals by the vector size, while serializing vectors multiplies rates accordingly. This interplay be- tween vectors 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 a correctness theorem that show that this extension preserves the language synchonous characteristics. This new design is under implementation in the Faust compiler.
Complete list of metadata
Contributor : Claire Medrala Connect in order to contact the contributor
Submitted on : Monday, October 3, 2011 - 4:46:27 PM
Last modification on : Wednesday, November 17, 2021 - 12:31:42 PM


  • HAL Id : hal-00628600, version 1


Pierre Jouvelot, Yann Orlarey. Dependent Vector Types for Multirate Faust. Proceedings of the Sound and Music Computing Conference, 2010, SMC'10 2010, pp.Pages 345--352. ⟨hal-00628600⟩



Record views