Presentation at SYNCHRON'12

Type inference in the multirate audio DSP language

Pierre Beauguitte, Mines ParisTech

Joint work with Pierre Jouvelot.

Faust is a synchronous functional programming language designed to describe audio digital signal processing algorithms. The same program can be compiled towards several platforms (standalone application, VST plug-in, iOS application…). A vector and multirate extension is under development to address the needs of more complex audio algorithms, such as spectral analysis. This language extension is equipped with a polymorphic and dependent type system. We present a typing algorithm, used to check the correctness of a Faust program and provide type information to the programmer without the need for any code annotation.

Slides.