El FarmaceuticoPub Date : 2014-09-03DOI: 10.1145/2633638.2633639
J. Noble, T. Jones
{"title":"[Demo abstract] LittleBits synth kit as a physically-embodied, domain specific functional programming language","authors":"J. Noble, T. Jones","doi":"10.1145/2633638.2633639","DOIUrl":"https://doi.org/10.1145/2633638.2633639","url":null,"abstract":"littleBits (littleBits.cc) is an open-source hardware library of pre assembled analogue components that can be easily assembled into circuits, disassembled, reassembled, and re-used. In this demo, we consider littleBits --- and the littleBits synth kit in particular ---as a physically-embodied domain specific functional programming language, and how littleBits circuits can be considered as monadic programs.","PeriodicalId":88474,"journal":{"name":"El Farmaceutico","volume":"28 1","pages":"61-62"},"PeriodicalIF":0.0,"publicationDate":"2014-09-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"87975055","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
El FarmaceuticoPub Date : 2014-09-03DOI: 10.1145/2633638.2633649
P. Hudak, David Janin
{"title":"Tiled polymorphic temporal media","authors":"P. Hudak, David Janin","doi":"10.1145/2633638.2633649","DOIUrl":"https://doi.org/10.1145/2633638.2633649","url":null,"abstract":"Tiled Polymorphic Temporal Media (tiled PTM) is an algebraic approach to specifying the composition of multimedia values having an inherent temporal quality -- for example sound clips, musical scores, computer animations, and video clips. Mathematically, one can think of a tiled PTM as a tiling in the one dimension of time. A tiled PTM value has two synchronization marks that specify, via an effective notion of tiled product, how the tiled PTM values are positioned in time relative to one another, possibly with overlaps.\u0000 Together with a pseudo inverse operation, and the related reset and co-reset projection operators, the tiled product is shown to encompass both sequential and parallel products over temporal media. Up to observational equivalence, the resulting algebra of tiled PTM is shown to be an inverse monoid: the pseudo inverse being a semigroup inverse. These and other algebraic properties are explored in detail.\u0000 In addition, recursively-defined infinite tiles are considered. Ultimately, in order for a tiled PTM to be renderable, we must know its beginning, and how to compute its evolving value over time. Though undecidable in the general case, we define decidable special cases that still permit infinite tilings.\u0000 Finally, we describe an elegant specification, implementation, and proof of key properties in Haskell, whose lazy evaluation is crucial for assuring the soundness of recursive tiles. Illustrative examples, within the Euterpea framework for musical temporal media, are provided throughout.","PeriodicalId":88474,"journal":{"name":"El Farmaceutico","volume":"43 1","pages":"49-60"},"PeriodicalIF":0.0,"publicationDate":"2014-09-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"88064955","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
El FarmaceuticoPub Date : 2013-09-28DOI: 10.1145/2505341.2505345
Donya Quick, P. Hudak
{"title":"Grammar-based automated music composition in Haskell","authors":"Donya Quick, P. Hudak","doi":"10.1145/2505341.2505345","DOIUrl":"https://doi.org/10.1145/2505341.2505345","url":null,"abstract":"Few algorithms for automated music composition are able to address the combination of harmonic structure, metrical structure, and repetition in a generalized way. Markov chains and neural nets struggle to address repetition of a musical phrase, and generative grammars generally do not handle temporal aspects of music in a way that retains a coherent metrical structure (nor do they handle repetition). To address these limitations, we present a new class of generative grammars called Probabilistic Temporal Graph Grammars, or PTGG's, that handle all of these features in music while allowing an elegant and concise implementation in Haskell. Being probabilistic allows one to express desired outcomes in a probabilistic manner; being temporal allows one to express metrical structure; and being a graph grammar allows one to express repetition of phrases through the sharing of nodes in the graph. A key aspect of our approach that enables handling of harmonic and metrical structure in addition to repetition is the use of rules that are parameterized by duration, and thus are actually functions. As part of our implementation, we also make use of a music-theoretic concept called chord spaces.","PeriodicalId":88474,"journal":{"name":"El Farmaceutico","volume":"31 1","pages":"59-70"},"PeriodicalIF":0.0,"publicationDate":"2013-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"88297549","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
El FarmaceuticoPub Date : 2013-09-28DOI: 10.1145/2505341.2505348
Jason Hemann, Eric Holk
{"title":"Visualizing the turing tarpit","authors":"Jason Hemann, Eric Holk","doi":"10.1145/2505341.2505348","DOIUrl":"https://doi.org/10.1145/2505341.2505348","url":null,"abstract":"Minimal programming languages like Jot generate limited interest outside of the community of languages enthusiasts. This is unfortunate, because the simplicity of these languages endows them with an inherent beauty and provides deep insight into the nature of computation. We present a way of visualizing the behavior of many Jot programs at once, providing interesting images and also hinting at somewhat non-obvious relationships between programs.\u0000 In the same way that fractals research has yielded new mathematical insights, research into visualization such as that presented here could produce new perspectives on the structure and nature of computation. A gallery containing the visualizations presented herein can be found at http://tarpit.github.io/TarpitGazer.","PeriodicalId":88474,"journal":{"name":"El Farmaceutico","volume":"19 1","pages":"71-76"},"PeriodicalIF":0.0,"publicationDate":"2013-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"88108573","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
El FarmaceuticoPub Date : 2013-09-28DOI: 10.1145/2505341.2505343
Hendrik Vincent Koops, José Pedro Magalhães, W. B. Haas
{"title":"A functional approach to automatic melody harmonisation","authors":"Hendrik Vincent Koops, José Pedro Magalhães, W. B. Haas","doi":"10.1145/2505341.2505343","DOIUrl":"https://doi.org/10.1145/2505341.2505343","url":null,"abstract":"Melody harmonisation is a centuries-old problem of long tradition, and a core aspect of composition in Western tonal music. In this work we describe FHarm, an automated system for melody harmonisation based on a functional model of harmony. Our system first generates multiple harmonically well-formed chord sequences for a given melody. From the generated sequences, the best one is chosen, by picking the one with the smallest deviation from the harmony model. Unlike all existing systems, FHarm guarantees that the generated chord sequences follow the basic rules of tonal harmony. We carry out two experiments to evaluate the quality of our harmonisations. In one experiment, a panel of harmony experts is asked to give its professional opinion and rate the generated chord sequences for selected melodies. In another experiment, we generate a chord sequence for a selected melody, and compare the result to the original harmonisation given by a harmony scholar. Our experiments confirm that FHarm generates realistic chords for each melody note. However, we also conclude that harmonising a melody with individually well-formed chord sequences from a harmony model does not guarantee a well-sounding coherence between the chords and the melody. We reflect on the experience gained with our experiment, and propose future improvements to refine the quality of the harmonisation.","PeriodicalId":88474,"journal":{"name":"El Farmaceutico","volume":"20 1","pages":"47-58"},"PeriodicalIF":0.0,"publicationDate":"2013-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"73989799","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
El FarmaceuticoPub Date : 2013-09-28DOI: 10.1145/2505341.2505346
Samuel Aaron, A. Blackwell
{"title":"From sonic Pi to overtone: creative musical experiences with domain-specific and functional languages","authors":"Samuel Aaron, A. Blackwell","doi":"10.1145/2505341.2505346","DOIUrl":"https://doi.org/10.1145/2505341.2505346","url":null,"abstract":"Domain Specific and Functional languages provide an excellent linguistic context for exploring new forms of music notation -- not just for formalising compositions but also for live interaction workflows. This experience report describes two novel live coding systems that employ code execution to modify live sounds and music. The first of these systems, Sonic Pi, aims at teaching core computing notions to school students using live-coded music as a means of stimulating and maintaining student engagement. We describe how an emphasis on a functional style improves the ease in which core computer science concepts can be communicated to students. Secondly we describe Overtone, a functional language and live coding environment aimed towards mprofessional electronic musicians. We describe how Overtone's abstractions and architecture strongly benefit from a functional-oriented implementation. Both Sonic Pi and Overtone are freely available open-source platforms.","PeriodicalId":88474,"journal":{"name":"El Farmaceutico","volume":"20 1","pages":"35-46"},"PeriodicalIF":0.0,"publicationDate":"2013-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"73798715","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
El FarmaceuticoPub Date : 2013-09-28DOI: 10.1145/2505341.2505342
J. Bresson, Raphael Foulon, Marco Stroppa
{"title":"Reduction as a transition controller for sound synthesis events","authors":"J. Bresson, Raphael Foulon, Marco Stroppa","doi":"10.1145/2505341.2505342","DOIUrl":"https://doi.org/10.1145/2505341.2505342","url":null,"abstract":"We present an application of reduction and higher-order functions in a recent computer-aided composition project. Our objective is the generation of control data for the Chant sound synthesizer using OpenMusic (OM), a domain-specific visual programming environment based on Common Lisp. The system we present allows to compose sounds by combining synthesis events in sequences. After the definition of the compositional primitives determining these events, we handle their sequencing, transitions and possible overlapping/fusion using a special fold operator. The artistic context of this project is the production of the opera Re Orso, premiered in 2012 at the Opera Comique, Paris.","PeriodicalId":88474,"journal":{"name":"El Farmaceutico","volume":"1 1","pages":"1-10"},"PeriodicalIF":0.0,"publicationDate":"2013-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"91374931","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
El FarmaceuticoPub Date : 2013-09-28DOI: 10.1145/2505341.2505344
Guillaume Baudart, Louis Mandel, Marc Pouzet
{"title":"Programming mixed music in ReactiveML","authors":"Guillaume Baudart, Louis Mandel, Marc Pouzet","doi":"10.1145/2505341.2505344","DOIUrl":"https://doi.org/10.1145/2505341.2505344","url":null,"abstract":"Mixed music is about live musicians interacting with electronic parts which are controlled by a computer during the performance. It allows composers to use and combine traditional instruments with complex synthesized sounds and other electronic devices. There are several languages dedicated to the writing of mixed music scores. Among them, the Antescofo language coupled with an advanced score follower allows a composer to manage the reactive aspects of musical performances: how electronic parts interact with a musician. However these domain specific languages do not offer the expressiveness of functional programming.\u0000 We embed the Antescofo language in a reactive functional programming language, ReactiveML. This approach offers to the composer recursion, higher order, inductive types, as well as a simple way to program complex reactive behaviors thanks to the synchronous model of concurrency on which ReactiveML is built. This article presents how to program mixed music in ReactiveML through several examples.","PeriodicalId":88474,"journal":{"name":"El Farmaceutico","volume":"2012 1","pages":"11-22"},"PeriodicalIF":0.0,"publicationDate":"2013-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"86359416","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
El FarmaceuticoPub Date : 2013-09-28DOI: 10.1145/2505341.2505347
David Janin, Florent Berthaut, M. Desainte-Catherine, Y. Orlarey, Sylvain Salvati
{"title":"The T-calculus: towards a structured programing of (musical) time and space","authors":"David Janin, Florent Berthaut, M. Desainte-Catherine, Y. Orlarey, Sylvain Salvati","doi":"10.1145/2505341.2505347","DOIUrl":"https://doi.org/10.1145/2505341.2505347","url":null,"abstract":"In the field of music system programming, the T-calculus is a proposal for combining space modeling and time programming into a single programming feature: spatiotemporal tiled programming. Based on a solid algebraic model, it aims at decomposing every operation on musical objects into the sequence of a synchronization operation that describes how objects are positioned one with respect the other, and a fusion operation that describes how their values are then combined. A first simple version of such a tiled calculus is presented and studied in this paper.","PeriodicalId":88474,"journal":{"name":"El Farmaceutico","volume":"2005 1","pages":"23-34"},"PeriodicalIF":0.0,"publicationDate":"2013-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"83000795","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}