ICFP Workshops 2017
22nd ACM SIGPLAN International Conference on Functional Programming (ICFP 2017)
Powered by
Conference Publishing Consulting

5th ACM SIGPLAN International Workshop on Functional Art, Music, Modeling, and Design (FARM 2017), September 9, 2017, Oxford, UK

FARM 2017 – Proceedings

Contents - Abstracts - Authors

5th ACM SIGPLAN International Workshop on Functional Art, Music, Modeling, and Design (FARM 2017)


Title Page

Message from the Chairs
FARM 2017 Workshop welcome from the Chairs.


A Categorial Grammar for Music and Its Use in Automatic Melody Generation
Halley Young
(University of Pennsylvania, USA)
Like natural language, music can be described as being composed of various parts, which combine together to form a set-theoretic or logical entity. The conceptualized parts are more basic than the music seen on a page; they are the musical objects subject to music-theoretic analysis, and can be described using the language of functional programming and lambda calculus. This paper introduces the types of musical objects seen in tonal and modern music, as well as the combinators that allow them to combine to create other musical objects. We propose a method for automatically generating melodies by searching for combinations of musical objects which together produce a valid program corresponding to a melody or set of melodies.

Publisher's Version Article Search
Modelling the Way Mathematics Is Actually Done
Joseph Corneli, Ursula Martin, Dave Murray-Rust, Alison Pease, Raymond Puzio, and Gabriela Rino Nesin
(University of Edinburgh, UK; University of Oxford, UK; University of Dundee, UK; PlanetMath.org, USA; University of Brighton, UK)
Whereas formal mathematical theories are well studied, computers cannot yet adequately represent and reason about mathematical dialogues and other informal texts. To address this gap, we have developed a representation and reasoning strategy that draws on contemporary argumentation theory and classic AI techniques for representing and querying narratives and dialogues. In order to make the structures that these modelling tools produce accessible to computational reasoning, we encode representations in a higher-order nested semantic network. This system, for which we have developed a preliminary prototype in LISP, can represent both the content of what people say, and the dynamic reasoning steps that move from one step to the next.

Publisher's Version Article Search Info
FAUST Tutorial for Functional Programmers
Yann Orlarey, Stéphane Letz, Dominique Fober, and Romain Michon
This paper is an introduction to FAUST, a functional programming language for sound synthesis and audio processing. We assume that the reader has some familiarity with functional programming, but no previous knowledge in signal processing. The text describes several examples that the reader will be able to try online using a web browser. These examples are preceded by two more technical sections presenting some aspects of the language.

Publisher's Version Article Search
GALE: A Functional Graphic Adventure Library and Engine
Ivan Perez
(Keera Studios, UK)
Functional Programming promises highly-declarative code, efficient, parallelisable execution, modularity and reusability. In spite of these advantages, the use of pure Functional Languages in commercial games is still rare. This is, in part, due to the lack of backends for multimedia, production tools, and demonstrations that functional abstractions work well for other than non-trivial examples.
In this paper we present GALE, a Graphic Adventure Library and Engine implemented in Haskell. Our engine implements the basic common features available in similar commercial engines for graphic adventures. We show a high-level abstract definition of game descriptions that allows us not only to run them, but also to analyse them in compile time. We also demonstrate how this description allows us to provide features not available in traditional engines. Our system works on iOS, Android and desktop, and is accompanied by a development environment to compose the games with no prior programming skills.

Publisher's Version Article Search
Unified Media Programming: An Algebraic Approach
Simon Archipoff and David Janin
(LaBRI, France; University of Bordeaux, France)
In this paper, we aim at defining a simple and sound mathematical framework for describing temporal media programming language semantics. It occurs that semigroup theory offers various concepts that are especially well suited for this purpose. As a result, a fairly general programming scheme can be defined in order to specify, compose and render both spatial media objects (e.g. 3D drawings) and timed media objects (e.g. Animation or Music). Each of these constructs is specified in Haskell via an adequate type class definition and an associated uniform data type construct. A simple monoid based semantics model of the turtle command language of Logo is detailed and extended throughout the paper. This allows for providing step by step introductions and usage examples of the algebraic concepts and constructs our proposal is based on.

Publisher's Version Article Search


FARM 2017 Demo Summary
Jean Bresson and Michael Sperber
(IRCAM, France; CNRS, France; UPMC, France; Active Group, Germany)
This is a summary of the demos presented at the 5th ACM SIGPLAN International Workshop on Functional Art, Music, Modelling and Design (FARM), prepared prior to the event.

Publisher's Version Article Search
FARM 2017 Performances
Alex McLean
(Deutsches Museum Research Institute, Germany)
A concert of performances in the FARM workshop tradition, taking place 9th September 2017 in the Old Fire Station, Oxford. The performers will all use functional programming and related techniques, to create live music and visuals. We introduce this evening by describing the ideas and technologies behind the performances, together with biographies of the artists involved.

Publisher's Version Article Search

proc time: 0.5