Mots clés
2015 |
Fober, Dominique; Gouilloux, Guillaume; Orlarey, Yann; Letz, Stéphane Distributing Music Scores to Mobile Platforms and to the Internet using INScore (Inproceeding) Proceedings of the Sound and Music Computing conference — SMC’15, pp. 229–233, 2015. (Abstract | Links | BibTeX | Étiquettes: graphic, programming, score, web music) @inproceedings{Fober:15b,
title = {Distributing Music Scores to Mobile Platforms and to the Internet using INScore}, author = {Dominique Fober and Guillaume Gouilloux and Yann Orlarey and Stéphane Letz}, url = {inscore-web-SMC15.pdf}, year = {2015}, date = {2015-07-30}, booktitle = {Proceedings of the Sound and Music Computing conference — SMC’15}, pages = {229–233}, abstract = {Music notation is facing new musical forms such as electronic and/or interactive music, live coding, hybridizations with dance, design, multimedia. It is also facing the migration of musical instruments to gestural and mobile platforms, which poses the question of new scores usages on devices that mostly lack the necessary graphic space to display the music in a traditional setting and approach. Music scores distributed and shared on the Internet start also to be the support of innovative musical practices, which raises other issues, notably regarding dynamic and collaborative music scores. This paper introduces some of the perspectives opened by the migration of music scores to mobile platforms and to the Internet and it presents the approach adopted with INScore, an environment for the design of augmented, interactive music scores.}, keywords = {graphic, programming, score, web music}, pubstate = {published}, tppubtype = {inproceedings} } Music notation is facing new musical forms such as electronic and/or interactive music, live coding, hybridizations with dance, design, multimedia. It is also facing the migration of musical instruments to gestural and mobile platforms, which poses the question of new scores usages on devices that mostly lack the necessary graphic space to display the music in a traditional setting and approach. Music scores distributed and shared on the Internet start also to be the support of innovative musical practices, which raises other issues, notably regarding dynamic and collaborative music scores. This paper introduces some of the perspectives opened by the migration of music scores to mobile platforms and to the Internet and it presents the approach adopted with INScore, an environment for the design of augmented, interactive music scores.
|
2013 |
Fober, Dominique; Letz, Stéphane; Orlarey, Yann Programmation événementielle de partitions musicales interactives. (Inproceeding) Actes des Journées d’Informatique Musicale JIM2013, Paris, 2013. (Abstract | Links | BibTeX | Étiquettes: inscore, interaction, OSC, programming, score) @inproceedings{fober13a,
title = {Programmation événementielle de partitions musicales interactives.}, author = {Dominique Fober and Stéphane Letz and Yann Orlarey}, url = {jim2013_11.pdf}, year = {2013}, date = {2013-01-01}, booktitle = {Actes des Journées d’Informatique Musicale JIM2013, Paris}, abstract = {INSCORE est un environnement pour la conception de partitions musicales interactives qui intègre un système original d\’interaction basé sur des événements et sur un langage de script permettant d\’associer des messages arbitraires à ces événements. Initialement conçu pour être piloté via OSC, la version textuelle des messages OSC s\’est rapidement constituée en format de stockage, puis étendue en un langage de script permettant une plus grande souplesse dans la description des partitions et des interactions avec ces partitions. Cet article présente ce langage de script et illustre notamment ses capacités à décrire des interactions sous forme événementielle, tout en restant dans l\’espace temporel.}, keywords = {inscore, interaction, OSC, programming, score}, pubstate = {published}, tppubtype = {inproceedings} } INSCORE est un environnement pour la conception de partitions musicales interactives qui intègre un système original d’interaction basé sur des événements et sur un langage de script permettant d’associer des messages arbitraires à ces événements. Initialement conçu pour être piloté via OSC, la version textuelle des messages OSC s’est rapidement constituée en format de stockage, puis étendue en un langage de script permettant une plus grande souplesse dans la description des partitions et des interactions avec ces partitions. Cet article présente ce langage de script et illustre notamment ses capacités à décrire des interactions sous forme événementielle, tout en restant dans l’espace temporel.
|
Fober, Dominique; Letz, Stéphane; Orlarey, Yann; Bevilacqua, Frederic Programming Interactive Music Scores with INScore (Inproceeding) Proceedings of the Sound and Music Computing conference – SMC’13, pp. 185-190, 2013. (Abstract | Links | BibTeX | Étiquettes: graphic, interaction, music, programming, score, synchronization) @inproceedings{ Fober:13b ,
title = {Programming Interactive Music Scores with INScore}, author = {Dominique Fober and Stéphane Letz and Yann Orlarey and Frederic Bevilacqua}, url = {fober-smc2013-final.pdf}, year = {2013}, date = {2013-01-01}, booktitle = {Proceedings of the Sound and Music Computing conference – SMC’13}, pages = {185-190}, abstract = {INScore is an environment for the design of interactive music scores that includes an original event-based interaction system and a scripting language for associating arbitrary messages to these events. We extended the previous version by supporting scripting languages offering a great flexibility in the description of scores and in the interactions with scores. The textual format is directly derived from the OSC message format that was defined in the original INScore version. This article presents the scripting language and illustrates its ability to describe interactions based on events, while remaining in the temporal space. It also introduces the IRCAM gesture follower and how it is embedded into INScore to provide gestural interaction capabilities..}, keywords = {graphic, interaction, music, programming, score, synchronization}, pubstate = {published}, tppubtype = {inproceedings} } INScore is an environment for the design of interactive music scores that includes an original event-based interaction system and a scripting language for associating arbitrary messages to these events. We extended the previous version by supporting scripting languages offering a great flexibility in the description of scores and in the interactions with scores. The textual format is directly derived from the OSC message format that was defined in the original INScore version. This article presents the scripting language and illustrates its ability to describe interactions based on events, while remaining in the temporal space. It also introduces the IRCAM gesture follower and how it is embedded into INScore to provide gestural interaction capabilities..
|
Letz, Stéphane; Fober, Dominique; Orlarey, Yann Comment embarquer le compilateur Faust dans vos applications ? (Inproceeding) Actes des Journ’ees d’Informatique Musicale JIM2013, Paris, pp. 137–140, 2013. (Abstract | Links | BibTeX | Étiquettes: compilation, FAUST, programming, signal processing) @inproceedings{letz13,
title = {Comment embarquer le compilateur Faust dans vos applications ?}, author = {Stéphane Letz and Dominique Fober and Yann Orlarey}, url = {jim2013_17.pdf}, year = {2013}, date = {2013-01-01}, booktitle = {Actes des Journ’ees d’Informatique Musicale JIM2013, Paris}, pages = {137–140}, abstract = {Le compilateur Faust est désormais disponible sous la forme d’une librairie nommée libfaust. Associée à la technologie LLVM, cette librairie peut être embarquée dans n’importe quelle application ou plugin audio, leur permet- tant ainsi de compiler et d’exécuter dynamiquement du code Faust de manière native, aussi efficacement que du code compilé traditionnel. L’article présente la libraire libfaust, l’infrastructure de compilation LLVM, et deux applications de cette technologie : faustgen ̃ un plugin Max/MSP permettant d’éditer, de compiler et d’exécuter du code Faust depuis Max, et FaustNode, une extension de la WebAudio API permet- tant de compiler et d’exécuter du code Faust depuis un navigateur Web. }, keywords = {compilation, FAUST, programming, signal processing}, pubstate = {published}, tppubtype = {inproceedings} } Le compilateur Faust est désormais disponible sous la forme d’une librairie nommée libfaust. Associée à la technologie LLVM, cette librairie peut être embarquée dans n’importe quelle application ou plugin audio, leur permet- tant ainsi de compiler et d’exécuter dynamiquement du code Faust de manière native, aussi efficacement que du code compilé traditionnel.
L’article présente la libraire libfaust, l’infrastructure de compilation LLVM, et deux applications de cette technologie : faustgen ̃ un plugin Max/MSP permettant d’éditer, de compiler et d’exécuter du code Faust depuis Max, et FaustNode, une extension de la WebAudio API permet- tant de compiler et d’exécuter du code Faust depuis un navigateur Web. |
2012 |
Barkati, Karim; Orlarey, Yann; Barthélemy, Jérôme Abstraction du processus temps réel : une stratégie pour la préservation à long terme (Inproceeding) Revue Francophone d’Informatique Musicale, MSH Paris, 2012. (Abstract | Links | BibTeX | Étiquettes: DSP, FAUST, heritage, preservation, programming) @inproceedings{orlarey12w,
title = {Abstraction du processus temps réel : une stratégie pour la préservation à long terme}, author = {Karim Barkati and Yann Orlarey and Jérôme Barthélemy}, url = {faust-preservation-rfim-2012.pdf}, year = {2012}, date = {2012-09-28}, booktitle = {Revue Francophone d’Informatique Musicale, MSH Paris}, abstract = {Les recherches décrites ici abordent la problématique de la préservation à long terme du processus temps réel dans la création contemporaine utilisant le numérique. En effet, nous avons développé une stratégie d’ abstraction, laquelle consiste à générer automatiquement une documentation mathématique qui explicite la sémantique d’un processus, représentée uniquement à l’aide de la notation mathématique et du langage naturel. L’objectif et l’enjeu de cette approche sont à situer dans le statut auto-suffisant de cette documentation, en tant que support autonome pour la réimplémentation.}, keywords = {DSP, FAUST, heritage, preservation, programming}, pubstate = {published}, tppubtype = {inproceedings} } Les recherches décrites ici abordent la problématique de la préservation à long terme du processus temps réel dans la création contemporaine utilisant le numérique. En effet, nous avons développé une stratégie d’ abstraction, laquelle consiste à générer automatiquement une documentation mathématique qui explicite la sémantique d’un processus, représentée uniquement à l’aide de la notation mathématique et du langage naturel. L’objectif et l’enjeu de cette approche sont à situer dans le statut auto-suffisant de cette documentation, en tant que support autonome pour la réimplémentation.
|
Michon, Romain; Orlarey, Yann Le compilateur FAUST en ligne : un IDE en ligne pour le langage de programmation FAUST (Inproceeding) Actes des Journées d’Informatique Musicale (JIM) 2012, Mons, Belgique,, 2012. (Abstract | Links | BibTeX | Étiquettes: DSP, FAUST, programming, web) @inproceedings{orlarey12z,
title = {Le compilateur FAUST en ligne : un IDE en ligne pour le langage de programmation FAUST}, author = {Romain Michon and Yann Orlarey}, url = {faust-online-jim-2012.pdf}, year = {2012}, date = {2012-05-09}, booktitle = {Actes des Journées d’Informatique Musicale (JIM) 2012, Mons, Belgique,}, abstract = {FAUST est un langage de programmation fonctionnel pour le traitement du signal et la synthèse de sons en temps réel. Grâce à un système de fichiers d’architectures, un seul et unique programme FAUST peut être utilisé pour générer du code pour un ensemble de types d’applications et de plug-ins. Le compilateur en ligne de FAUST ici présenté est une application Web écrite en PHP et en JavaScript offrant un environnement de développement multiplateforme et multiprocesseur pour le langage FAUST. Cet outil rend possible l’utilisation de la plupart des fonctionnalités de FAUST dans un navigateur Web et intègre un catalogue d’exemples évolutif faisant de lui une plate-forme pour utiliser et échanger facilement tout objet FAUST. Le fonctionnement du compilateur en ligne de FAUST est présenté en détail dans cet article. Les possibilités offertes par cet outil sont discutées et une brève ouverture sur les enjeux de l’utilisation des technologies Web pour l’informatique musicale est faite.}, keywords = {DSP, FAUST, programming, web}, pubstate = {published}, tppubtype = {inproceedings} } FAUST est un langage de programmation fonctionnel pour le traitement du signal et la synthèse de sons en temps réel. Grâce à un système de fichiers d’architectures, un seul et unique programme FAUST peut être utilisé pour générer du code pour un ensemble de types d’applications et de plug-ins. Le compilateur en ligne de FAUST ici présenté est une application Web écrite en PHP et en JavaScript offrant un environnement de développement multiplateforme et multiprocesseur pour le langage FAUST. Cet outil rend possible l’utilisation de la plupart des fonctionnalités de FAUST dans un navigateur Web et intègre un catalogue d’exemples évolutif faisant de lui une plate-forme pour utiliser et échanger facilement tout objet FAUST. Le fonctionnement du compilateur en ligne de FAUST est présenté en détail dans cet article. Les possibilités offertes par cet outil sont discutées et une brève ouverture sur les enjeux de l’utilisation des technologies Web pour l’informatique musicale est faite.
|
Michon, Romain; Orlarey, Yann The Faust Online Compiler: a Web-Based IDE for the Faust Programming Language (Inproceeding) Proceedings of the Linux Audio Conference 2012, CCRMA, 2012. (Abstract | Links | BibTeX | Étiquettes: DSP, FAUST, programming, web) @inproceedings{orlarey12y,
title = {The Faust Online Compiler: a Web-Based IDE for the Faust Programming Language}, author = {Romain Michon and Yann Orlarey}, url = {faust-online-lac-2012.pdf}, year = {2012}, date = {2012-04-12}, booktitle = {Proceedings of the Linux Audio Conference 2012, CCRMA}, abstract = {The Faust Online Compiler is a PHP/JavaScript based web application that provides a cross-platform and cross-processor programming environment for the Faust language. It allows to use most of Faust features directly in a web browser and it integrates an editable catalog of examples making it a platform to easily share and use Faust objects.}, keywords = {DSP, FAUST, programming, web}, pubstate = {published}, tppubtype = {inproceedings} } The Faust Online Compiler is a PHP/JavaScript based web application that provides a cross-platform and cross-processor programming environment for the Faust language. It allows to use most of Faust features directly in a web browser and it integrates an editable catalog of examples making it a platform to easily share and use Faust objects.
|
2011 |
Barkati, Karim; Orlarey, Yann Auto-documentation mathématique pour le traitement du signal avec Faust (Inproceeding) Actes des Journées d’Informatique Musicale (JIM) 2011, Saint-Etienne, 2011. (Abstract | Links | BibTeX | Étiquettes: DSP, FAUST, heritage, preservation, programming) @inproceedings{orlarey11w,
title = {Auto-documentation mathématique pour le traitement du signal avec Faust}, author = {Karim Barkati and Yann Orlarey}, url = {faust-mathdoc-jim-2011.pdf}, year = {2011}, date = {2011-05-09}, booktitle = {Actes des Journées d’Informatique Musicale (JIM) 2011, Saint-Etienne}, abstract = {L’article aborde le problème de la préservation à long terme des processus numériques temps réel utilisés dans la création musicale contemporaine. Nous présentons une stratégie de préservation par abstraction mathématique. Elle consiste à générer automatiquement une documentation mathématique qui décrit de manière précise la sémantique complète de tels processus.}, keywords = {DSP, FAUST, heritage, preservation, programming}, pubstate = {published}, tppubtype = {inproceedings} } L’article aborde le problème de la préservation à long terme des processus numériques temps réel utilisés dans la création musicale contemporaine. Nous présentons une stratégie de préservation par abstraction mathématique. Elle consiste à générer automatiquement une documentation mathématique qui décrit de manière précise la sémantique complète de tels processus.
|
2010 |
Letz, Stephane; Orlarey, Yann; Fober, Dominique Work Stealing Scheduler for Automatic Parallelization in Faust (Inproceeding) LAC, (Ed.): Proceedings of Linux Audio Conference, 2010. (Abstract | Links | BibTeX | Étiquettes: compiler, dataflow, functional, processing, programming, real-time, signal) @inproceedings{ Letz:10a ,
title = {Work Stealing Scheduler for Automatic Parallelization in Faust}, author = {Stephane Letz and Yann Orlarey and Dominique Fober}, editor = {LAC}, url = {FAUST_LAC2010.pdf}, year = {2010}, date = {2010-01-01}, booktitle = {Proceedings of Linux Audio Conference}, abstract = {Faust 0.9.10 introduces an alternative to OpenMP based parallel code generation using a Work Steal- ing Scheduler and explicit management of worker threads. This paper explains the new option and presents some benchmarks.}, keywords = {compiler, dataflow, functional, processing, programming, real-time, signal}, pubstate = {published}, tppubtype = {inproceedings} } Faust 0.9.10 introduces an alternative to OpenMP based parallel code generation using a Work Steal- ing Scheduler and explicit management of worker threads. This paper explains the new option and presents some benchmarks.
|
Orlarey, Yann; Letz, Stephane; Fober, Dominique Automatic Paralllelization of Audio Applications with Faust (Inproceeding) Actes du Congrès Français d’Acoustique, 2010. (Abstract | Links | BibTeX | Étiquettes: compiler, dataflow, functional, processing, programming, real-time, signal) @inproceedings{ Orlarey:10a ,
title = {Automatic Paralllelization of Audio Applications with Faust}, author = {Yann Orlarey and Stephane Letz and Dominique Fober}, url = {faust-CFA-2010.pdf}, year = {2010}, date = {2010-01-01}, booktitle = {Actes du Congrès Français d’Acoustique}, abstract = {Faust (Functional AUdio STreams) [1] stands for both a programming language and its compiler. Being fully compiled allows Faust to be used as an alternative to C/C++ to develop high-performance audio signal processing applications, DSP libraries and plug-ins for a variety of audio platforms and standards.}, keywords = {compiler, dataflow, functional, processing, programming, real-time, signal}, pubstate = {published}, tppubtype = {inproceedings} } Faust (Functional AUdio STreams) [1] stands for both a programming language and its compiler. Being fully compiled allows Faust to be used as an alternative to C/C++ to develop high-performance audio signal processing applications, DSP libraries and plug-ins for a variety of audio platforms and standards.
|
2009 |
Orlarey, Yann; Fober, Dominique; Letz, Stephane PARALLELIZATION OF AUDIO APPLICATIONS WITH FAUST (Inproceeding) Proceedings of the first Sound and Music Computing conference – SMC’09, pp. 99–112, 2009. (Abstract | Links | BibTeX | Étiquettes: compiler, dataflow, functional, processing, programming, real-time, signal) @inproceedings{ orlarey:09b ,
title = {PARALLELIZATION OF AUDIO APPLICATIONS WITH FAUST}, author = {Yann Orlarey and Dominique Fober and Stephane Letz}, url = {faust_SMC2009.pdf}, year = {2009}, date = {2009-01-01}, booktitle = {Proceedings of the first Sound and Music Computing conference – SMC’09}, pages = {99–112}, abstract = {Faust 0.9.9.6 introduces new compilation options to automatically parallelize audio applications 1 . This paper explains how the automatic parallelization is done and presents some benchmarks.}, keywords = {compiler, dataflow, functional, processing, programming, real-time, signal}, pubstate = {published}, tppubtype = {inproceedings} } Faust 0.9.9.6 introduces new compilation options to automatically parallelize audio applications 1 . This paper explains how the automatic parallelization is done and presents some benchmarks.
|
Orlarey, Yann; Fober, Dominique; Letz, Stephane FAUST : an Efficient Functional Approach to DSP Programming (Book Chapter) FRANCE, Editions DELATOUR (Ed.): NEW COMPUTATIONAL PARADIGMS FOR COMPUTER MUSIC, pp. 65–96, 2009. (Abstract | Links | BibTeX | Étiquettes: compiler, dataflow, functional, processing, programming, real-time, signal) @inbook{ orlarey:09c ,
title = {FAUST : an Efficient Functional Approach to DSP Programming}, author = {Yann Orlarey and Dominique Fober and Stephane Letz}, editor = {Editions DELATOUR FRANCE}, url = {faust-chapter.pdf}, year = {2009}, date = {2009-01-01}, booktitle = {NEW COMPUTATIONAL PARADIGMS FOR COMPUTER MUSIC}, pages = {65–96}, abstract = {FAUST is a programming language that provides a purely functional approach to signal processing while offering a high level of performance. FAUST aims at being complementary to existing audio languages by offering a viable and efficient alternative to C/C++ to develop signal processing libraries, audio plug-ins or standalone applications. The language is based on a simple and well defined formal semantics. A FAUST program denotes a signal processor, a mathematical function that transforms input signals into output signals. Being able to know precisely what a program computes is important not only for programmers, but also for compilers needing to generate the best possible code. Moreover these semantics questions are crucial for the long term preservation of music programs. The following paragraphs will give an overview of the language as well as a description of the compiler, including the generation of parallel code.}, keywords = {compiler, dataflow, functional, processing, programming, real-time, signal}, pubstate = {published}, tppubtype = {inbook} } FAUST is a programming language that provides a purely functional approach to signal processing while offering a high level of performance. FAUST aims at being complementary to existing audio languages by offering a viable and efficient alternative to C/C++ to develop signal processing libraries, audio plug-ins or standalone applications. The language is based on a simple and well defined formal semantics. A FAUST program denotes a signal processor, a mathematical function that transforms input signals into output signals. Being able to know precisely what a program computes is important not only for programmers, but also for compilers needing to generate the best possible code. Moreover these semantics questions are crucial for the long term preservation of music programs. The following paragraphs will give an overview of the language as well as a description of the compiler, including the generation of parallel code.
|
2007 |
Graef, Albert Interfacing Pure Data with Faust (Inproceeding) LAC, (Ed.): 2007. (Abstract | Links | BibTeX | Étiquettes: Computer, Data, digital, FAUST, functional, language, music, Pd, processing, programming, Pure, signal) @inproceedings{ AG07 ,
title = {Interfacing Pure Data with Faust}, author = {Albert Graef}, editor = {LAC}, url = {lac07.pdf}, year = {2007}, date = {2007-01-01}, abstract = {This paper reports on a new plugin interface for Grame’s functional DSP programming language Faust. The interface allows Faust programs to be run as externals in Miller Puckette’s Pd (Pure Data), making it possible to extend Pd with new audio objects programmed in Faust. The software also includes a script to create wrapper patches around Faust units which feature “graph-on-parent†GUI elements to facilitate the interactive control of Faust units. The paper gives a description of the interface and illustrates its usage by means of a few examples.}, keywords = {Computer, Data, digital, FAUST, functional, language, music, Pd, processing, programming, Pure, signal}, pubstate = {published}, tppubtype = {inproceedings} } This paper reports on a new plugin interface for Grame’s functional DSP programming language Faust. The interface allows Faust programs to be run as externals in Miller Puckette’s Pd (Pure Data), making it possible to extend Pd with new audio objects programmed in Faust. The software also includes a script to create wrapper patches around Faust units which feature “graph-on-parent†GUI elements to facilitate the interactive control of Faust units. The paper gives a description of the interface and illustrates its usage by means of a few examples.
|
2006 |
Orlarey, Yann Faust 0.9.8 Quick Reference (Technical Manual) Grame, (Ed.): 2006. (Abstract | Links | BibTeX | Étiquettes: digital, functional, processing, programming, signal) @manual{ Orlarey:06a ,
title = {Faust 0.9.8 Quick Reference}, author = {Yann Orlarey}, editor = {Grame}, url = {faust-quick-reference.pdf}, year = {2006}, date = {2006-01-01}, abstract = {This document is a quick-reference to the Faust language (version 0.9.8), a programming language for real-time signal processing and synthesis that targets high-performance signal processing applications and audio plugins.}, keywords = {digital, functional, processing, programming, signal}, pubstate = {published}, tppubtype = {manual} } This document is a quick-reference to the Faust language (version 0.9.8), a programming language for real-time signal processing and synthesis that targets high-performance signal processing applications and audio plugins.
|
Graef,; Kersten,; Orlarey, Yann DSP Programming with Faust, Q and SuperCollider (Inproceeding) LAC, (Ed.): Linux Audio Conference 2006, 2006. (Abstract | Links | BibTeX | Étiquettes: Computer, digital, FAUST, functional, language, music, processing, programming, Q, signal, SuperCollider) @inproceedings{ GKO2006a ,
title = {DSP Programming with Faust, Q and SuperCollider}, author = {A. Graef and S. Kersten and Yann Orlarey}, editor = {LAC}, url = {lac06.pdf}, year = {2006}, date = {2006-01-01}, booktitle = {Linux Audio Conference 2006}, abstract = {Faust is a functional programming language for realtime signal processing and synthesis that targets high-performance signal processing applications and audio plugins. The paper gives a brief introduction to Faust and discusses its interfaces to Q, a general purpose functional programming language, and SuperCollider, an object-oriented sound synthesis language and engine.}, keywords = {Computer, digital, FAUST, functional, language, music, processing, programming, Q, signal, SuperCollider}, pubstate = {published}, tppubtype = {inproceedings} } Faust is a functional programming language for realtime signal processing and synthesis that targets high-performance signal processing applications and audio plugins. The paper gives a brief introduction to Faust and discusses its interfaces to Q, a general purpose functional programming language, and SuperCollider, an object-oriented sound synthesis language and engine.
|
Orlarey, Yann Faust : functional programming for signal processing (slides) (Technical Manual) Grame, (Ed.): 2006. (Abstract | Links | BibTeX | Étiquettes: digital, functional, processing, programming, signal) @manual{ Orlarey:06b ,
title = {Faust : functional programming for signal processing (slides)}, author = {Yann Orlarey}, editor = {Grame}, url = {faust-den-haag-april-2006-v6.pdf}, year = {2006}, date = {2006-01-01}, abstract = {Slides presenting Faust at the Royal Conservatory in Den Haag, in April 2006}, keywords = {digital, functional, processing, programming, signal}, pubstate = {published}, tppubtype = {manual} } Slides presenting Faust at the Royal Conservatory in Den Haag, in April 2006
|
2004 |
Orlarey, Yann; Fober, Dominique; Letz, Stephane Syntactical and Semantical Aspects of Faust (Journal Article) 2004. (Abstract | Links | BibTeX | Étiquettes: compiler, dataflow, functional, processing, programming, real-time, signal) @article{ orlarey:04a ,
title = {Syntactical and Semantical Aspects of Faust}, author = {Yann Orlarey and Dominique Fober and Stephane Letz}, url = {faust-soft-computing.pdf}, year = {2004}, date = {2004-01-01}, booktitle = {Soft Computing}, abstract = {This paper presents some syntactical and semantical aspects of FAUST (Functional AUdio STreams), a programming language for real-time sound processing and synthesis. The programming model of FAUST combines two approaches : functional programming and block-diagrams composition. It is based on a block-diagram algebra. It has a well defined formal semantic and can be compiled into efficient C/C++ code.}, keywords = {compiler, dataflow, functional, processing, programming, real-time, signal}, pubstate = {published}, tppubtype = {article} } This paper presents some syntactical and semantical aspects of FAUST (Functional AUdio STreams), a programming language for real-time sound processing and synthesis. The programming model of FAUST combines two approaches : functional programming and block-diagrams composition. It is based on a block-diagram algebra. It has a well defined formal semantic and can be compiled into efficient C/C++ code.
|
2003 |
Gaudrain,; Orlarey, Yann A FAUST Tutorial (Technical Manual) Grame, (Ed.): 2003. (Abstract | Links | BibTeX | Étiquettes: audio, block-diagrams, functionnal, processing, programming, real, signal, time) @manual{ Gaudrain:03a ,
title = {A FAUST Tutorial}, author = {E. Gaudrain and Yann Orlarey}, editor = {Grame}, url = {faust_tutorial.pdf}, year = {2003}, date = {2003-01-01}, abstract = {This document presents the language FAUST, its syntax and grammar as well as several commented examples. FAUST (the name stands for Functional Audio Streams) is a programming language specifically designed to develop and implement efficient real time digital signal processors.}, keywords = {audio, block-diagrams, functionnal, processing, programming, real, signal, time}, pubstate = {published}, tppubtype = {manual} } This document presents the language FAUST, its syntax and grammar as well as several commented examples. FAUST (the name stands for Functional Audio Streams) is a programming language specifically designed to develop and implement efficient real time digital signal processors.
|
2002 |
Malod, Guillaume Etude de l’extension de la notion d’abstraction du lambda-calcul. (Technical Report) 2002. (Abstract | Links | BibTeX | Étiquettes: Elody, lambda-calcul, language, music, programming) @techreport{ Malod:02 ,
title = {Etude de l’extension de la notion d’abstraction du lambda-calcul.}, author = {Guillaume Malod}, editor = {Grame}, url = {FreeGen.pdf}, year = {2002}, date = {2002-01-01}, booktitle = {Technical Report – 02-08-09}, abstract = {Le programme Elody repose principalement sur les concepts du lambda-calcul, notamment les notions d’abstraction et d’application. L’abstraction classique a été étendue dans [leplatre] afin de permettre des manipulations plus puissantes de lambda-termes. Cette extension reposait sur une relation de généralité définie entre deux termes. Nous étudions ici plus précisément comment définir une relation de généralité entre deux termes, dans un but un peu différent du précédent: nous souhaitons pouvoir représenter des ensembles de termes, avec comme intuition qu’un terme représente l’ensemble de tous les termes moins généraux que lui. On cherche donc d’abord à obtenir une définition précise à partir de cette idée intuitive, en envisageant différentes définitions possibles, et on étudie les conséquences du choix qui semble le plus logique. La définition adoptée permet de définir une relation d’ordre et une relation d’équivalence qu’il convient de caractériser. On montre ensuite qu’il est possible de définir la borne supérieure et la borne inférieure d’un ensemble fini de termes, ce qui correspond à l’union et à l’intersection pour les ensembles de termes. On obtient finalement un cadre théorique assez net autour de la notion de généralité, qui permet d’envisager d’autres développements en manipulant des ensembles de termes. A titre d’exemple, on présente les algorithmes permettant d’effectuer les opérations sur les termes discutées précédemment, et enfin le code source commenté d’une implémentation simple en Caml.}, keywords = {Elody, lambda-calcul, language, music, programming}, pubstate = {published}, tppubtype = {techreport} } Le programme Elody repose principalement sur les concepts du lambda-calcul, notamment les notions d’abstraction et d’application. L’abstraction classique a été étendue dans [leplatre] afin de permettre des manipulations plus puissantes de lambda-termes. Cette extension reposait sur une relation de généralité définie entre deux termes. Nous étudions ici plus précisément comment définir une relation de généralité entre deux termes, dans un but un peu différent du précédent: nous souhaitons pouvoir représenter des ensembles de termes, avec comme intuition qu’un terme représente l’ensemble de tous les termes moins généraux que lui. On cherche donc d’abord à obtenir une définition précise à partir de cette idée intuitive, en envisageant différentes définitions possibles, et on étudie les conséquences du choix qui semble le plus logique. La définition adoptée permet de définir une relation d’ordre et une relation d’équivalence qu’il convient de caractériser. On montre ensuite qu’il est possible de définir la borne supérieure et la borne inférieure d’un ensemble fini de termes, ce qui correspond à l’union et à l’intersection pour les ensembles de termes. On obtient finalement un cadre théorique assez net autour de la notion de généralité, qui permet d’envisager d’autres développements en manipulant des ensembles de termes. A titre d’exemple, on présente les algorithmes permettant d’effectuer les opérations sur les termes discutées précédemment, et enfin le code source commenté d’une implémentation simple en Caml.
|
1997 |
Leplatre, Gregory Développement d’un opérateur d’abstraction généralisée pour le langage de programmation musicale Elody. (Technical Report) 1997. (Abstract | Links | BibTeX | Étiquettes: Elody, lambda-calcul, language, music, programming) @techreport{ Leplatre:97 ,
title = {Développement d’un opérateur d’abstraction généralisée pour le langage de programmation musicale Elody.}, author = {Gregory Leplatre}, editor = {Grame}, url = {Elody-AbstrGen.pdf}, year = {1997}, date = {1997-01-01}, abstract = {Dans le cadre des recherches réalisées au laboratoire d’informatique musicale de Grame autour des langages homogènes dérivés du lambda-calcul non typé, on se propose d’étudier les possibilités de généralisation de l’abstraction héritée du lambda-calcul. Dans cette optique, on formalise une notion de généralité des expressions du langage. En référence à cette notion, on peut envisager l’abstraction généralisée d’une expression e dans une expression f comme le moyen de désigner dans f tous les sous-termes q de f tels que e est plus générale que q. L’opérateur ainsi défini dans un lambda-calcul non typé peut être facilement adapté à un langage de programmation musicale dérivé du lambda-calcul. Dans Elody, un langage de ce type développé à Grame en JAVA, on a remplacé de cette manière, l’opérateur d’abstraction simple implémenté à l’origine, par un opérateur d’abstraction généralisé. Ce qui a pour incidence d’élargir la fonctionnalité du langage.}, keywords = {Elody, lambda-calcul, language, music, programming}, pubstate = {published}, tppubtype = {techreport} } Dans le cadre des recherches réalisées au laboratoire d’informatique musicale de Grame autour des langages homogènes dérivés du lambda-calcul non typé, on se propose d’étudier les possibilités de généralisation de l’abstraction héritée du lambda-calcul. Dans cette optique, on formalise une notion de généralité des expressions du langage. En référence à cette notion, on peut envisager l’abstraction généralisée d’une expression e dans une expression f comme le moyen de désigner dans f tous les sous-termes q de f tels que e est plus générale que q. L’opérateur ainsi défini dans un lambda-calcul non typé peut être facilement adapté à un langage de programmation musicale dérivé du lambda-calcul. Dans Elody, un langage de ce type développé à Grame en JAVA, on a remplacé de cette manière, l’opérateur d’abstraction simple implémenté à l’origine, par un opérateur d’abstraction généralisé. Ce qui a pour incidence d’élargir la fonctionnalité du langage.
|