Powered by
Conference Publishing Consulting

3rd ACM SIGPLAN International Workshop on Functional Art, Music, Modelling and Design (FARM 2015), September 5, 2015, Vancouver, BC, Canada

FARM 2015 – Proceedings

Contents - Abstracts - Authors
Title Page


Foreword
There is long history of interplay between mathematics and arts. This is illustrated, among many other examples, by Escher's physical paradoxes and Xenakis' geometrical music. In the last decades, the arrival of computers has helped developing these connections on an unprecedented scale: never before could abstract ideas so easily be turned into effective realizations. However, even creative users have classical needs in front of computers: accessibility, efficiency, reliability, reusability, to name but a few. Functional programming offers a unique combination of abstract mathematical elegance and efficient computerized rendering. It allows, perhaps more so than any other programming approach, to set up bridges between artistic concepts and effective experiments, bridges between creative methodologies and simple user interfaces, bridges between free inspirations and robust realizations.By gathering researchers, practitioners, artists, designers and any others interested, the ACM Workshop on Functional Art, Music, Modeling, and Design, or, as we prefer to say, the FARM, aims at developing this interdisciplinary field. Work in this challenging area has already led to new language design, abstraction techniques, and execution models, as well as the use of old ideas in new, novel, and surprising ways.

Mathematics, Textiles, and Programming: Scripted Scarves (Invited Talk)
Fabienne Serrière
(KnitYak LLC, USA)
Textiles and programming have a rich history with Babbage’s analytical engine using jacquard loom style punchcards and Lovelace’s description of how to program such a machine. Recently there has been a resurgence of popularity in consumer knitting machines because of open source projects helping people modify and script patterns to 1980’s knitting machines. This talk will cover the recent history of scripting textiles on consumer knitting machines, and the bright future ahead with scripting one-off designs for industrial knitting machines.

Repl Electric Performance: End of Buffer
Joseph Wilk
(SoundCloud, Germany)
A performance with a single programmer live coding both visuals and music using OpenGL shaders, Overtone and Emacs.

Diagrams: A Functional EDSL for Vector Graphics
Ryan Yates and Brent A. Yorgey
(University of Rochester, USA; Hendrix College, USA)
diagrams is a domain-specific language for creating vector graphics. We will give a short diagrams tutorial/demo, particularly highlighting the power of a functional, embedded domain-specific language.

The Shepard Tone and Higher-Order Multi-rate Synchronous Data-Flow Programming in Sig
Baltasar Trancón y Widemann and Markus Lepper
(TU Ilmenau, Germany; semantics, Germany)
The total functional real-time data-flow programming language Sig features a core layer with elegant denotational semantics, in terms of Mealy stream transducers and coiterative causal stream functions, that is convenient for domain experts in the primary application domains, such as scientific modeling and digital music and event arts. The core suffices for the implementation of many basic signal processing components. For the expression of more sophisticated computations, a second layer of Sig provides additional features, namely higher-order functional programming and multi-rate synchronicity, reducible by transformational semantics to the core layer. Here we describe the design of the upper layer of Sig and demonstrate its usage with the Shepard Tone, a well-known sound synthesis problem and model of psycho-acoustically paradoxical perception of relative musical pitch.

Real-Time Interactive Music in Haskell
Paul Hudak, Donya Quick, Mark Santolucito, and Daniel Winograd-Cort
(Yale University, USA)
Euterpea and UISF are two recently released Haskell libraries on Hackage that facilitate the creation of interactive musical programs. We show an example of using these two libraries in combination with Haskell's support for parallelism to create a complex application that generates music in real time in response to user input from MIDI controllers.

Video
Moodler: A Digital Modular Synthesiser with an Analogue User Interface
Dan Piponi
(A Neighborhood of Infinity, USA)
Moodler is a code-generating virtual modular synthesiser, implemented in Haskell, with a physical patch panel allowing users to generate audio synthesis code by physically connecting wires and adjusting potentiometers. In effect it is a compiler that compiles code written in a language of physical cables and knobs.

An Efficient Implementation of Tiled Polymorphic Temporal Media
Simon Archipoff
(LaBRI, France; University of Bordeaux, France)
Tiled Polymorphic Temporal Media (TPTM) are a convenient way to describe, compose and encode multimedia streams. This paper presents a TPTM encoding that allows simple and efficient implementation of both composition and rendering. In particular, an on-the-fly rendering procedure is provided in order to handle infinite (lazy) TPTM.

proc time: 0.73