ICFP Workshops 2023
28th ACM SIGPLAN International Conference on Functional Programming (ICFP 2023)
Powered by
Conference Publishing Consulting

11th ACM SIGPLAN International Workshop on Functional Art, Music, Modelling, and Design (FARM 2023), September 8, 2023, Seattle, WA, USA

FARM 2023 – Proceedings

Contents - Abstracts - Authors

11th ACM SIGPLAN International Workshop on Functional Art, Music, Modelling, and Design (FARM 2023)


Title Page

Welcome from the Chairs
It is our pleasure to welcome you to FARM 2023, the 11th ACM SIGPLAN International Workshop on Functional Art, Music, Modelling, and Design! FARM gathers together people from across disciplines who are harnessing functional techniques in the pursuit of creativity and expression.


Perfectly Imperfect: Music, Math, and the Keyboard (Keynote)
Gloria Cheng ORCID logo
(University of California at Los Angeles, USA)
As a concert pianist and harpsichordist, I am devoted to extracting expression and meaning out of the silent abstractions of a musical score. Behind the preparation for any performance is my stark wonder at how such innovative, suggestive sonic domains are realized by composers, literally out of thin air. We’ll explore some basic mathematic principles that underlie all musical discourse, with a focus, given time constraints, on Western classical music. With recorded and live examples from the keyboard, we’ll look at Harmony: from the acoustical demonstrations of Pythagoras, through the contentious battles over tunings and temperaments during the Baroque, to the microtonal experiments of modern times in the work of Harry Partch and Iannis Xenakis. And Rhythm: another vast realm of experimentation and invention, how did we get from 2/4 to the polymeters and irrational meters of Conlon Nancarrow and Thomas Adès?
Looking at music through a mathematical lens is one effort out of many to understand—though never explain—how this remarkable acoustic phenomenon can move us to tears.

Publisher's Version

Session 1

Weighted Refinement Types for Counterpoint Composition
Youyou CongORCID logo
(Tokyo Institute of Technology, Japan)
Refinement types are useful for describing specifications of programs. When applied to music theory, however, refinement types are too restrictive in that they do not allow breaking of rules. To relax this restriction, we propose weighted refinement types, a variation of refinement types where each refinement predicate carries a weight representing the importance of that predicate. In this paper, we present a weighted refinement type system that has core features required for composing species counterpoint. We also discuss potential applications of weighted refinement types in non-musical domains.

Publisher's Version
The Beauty and Elegance of Functional Reactive Animation
Ivan Perez ORCID logo
(Unaffiliated, USA)
It has been over 20 years since Elliott and Hudak published Functional Reactive Animation, which outlined the principles of interactive programming in functional languages. As a result, Functional Reactive Programming (FRP) has seen numerous implementations and has been applied to multiple areas, like robotics, physics simulations, game programming and user interfaces. The use of the term FRP has itself broadened, and nowadays covers both continuous-time purely functional abstractions and discrete-time reactive implementations. This paper presents a series of increasingly complex FRP animations in a current implementation. With a main focus on clarity and meaning, we explore three independent dimensions: space, time, and color. We demonstrate that, when embraced fully, Functional Programming can result in declarative constructs that are aesthetically beautiful and notationally elegant.

Publisher's Version
Demo: A Functional EDSL for Mathematics Visualization That Compiles to JavaScript
Allister Beharry ORCID logo
(University of London, UK)
Visualizations are a critical part of mathematics practice and education, and computers and open-source web technologies provide accessible ways to create high-quality mathematics visualizations at virtually no cost. However libraries and languages to create visualizations for mathematics are typically fine-grained, low-level, and targeted to vector graphics domain experts or web developers, not mathematics students or teachers or end-users. We present demos of Sylvester: a functional domain-specific language interface to the JSXGraph visualization library embedded in F# that emphasizes readability, composability, and the ability of end-users to easily create and manipulate elements of high-quality interactive mathematics visualizations without needing vector graphics or web development domain knowledge.

Publisher's Version Video

Session 2

Exploring Self-Embedded Knitting Programs with Twine
Amy Zhu ORCID logo, Adriana Schulz ORCID logo, and Zachary Tatlock ORCID logo
(University of Washington, USA)
We examine how we might explicitly embed the intricate details of the fabrication process in the design of an object; the goal is for the programs that manufacture the object to also produce themselves within the object. We highlight how concretizing the design process of an object in the real object can help reconstruct items and remind us of the reality that all objects must be manufactured, incurring labour and environmental costs. By drawing inspiration from self-reproducing programs, we outline a new self-decoding language design centred around quines for knitting, a versatile technique in fabric construction, with both historical significance and recent advances in programmable whole-garment machines for their manufacture. We show some preliminary results of using this language design to create knitted quines, and discuss how this interesting question might be further advanced.

Publisher's Version
Homotopy Type Theory for Sewn Quilts
Charlotte Clark ORCID logo and Rose Bohrer ORCID logo
(Worcester Polytechnic Institute, USA)
This paper introduces PieceWork, an imperative programming language for the construction of designs for sewn quilts, whose semantics are inspired by Homotopy Type Theory. The goals of PieceWork include improving the diversity of sewn designs that can be represented in computational methods, demonstrating a creative application of Homotopy Type Theory, and demonstrating that the craft of quilting is a worthy object of study in programming language theory. We develop an operational semantics, provide a prototype implementation and examples, and provide initial theoretical results. Type system design is in-progress.

Publisher's Version
Demo: Sonic Catalog of Rare Diseases
Stephen Taylor ORCID logo and Aditi Kantipuly ORCID logo
(University of Illinois at Urbana-Champaign, USA; McGill University, Canada)
This 15-20 minute demo presents our work in progress, a sonic catalog of rare diseases, along with prior work of data- driven music based on genetic sequences from SARS CoV-2. These data-driven compositions are created from spread- sheets, imported into Max and Kyma, and mapped to musical sound.

Publisher's Version

proc time: 2.24