Algorithmic music in Haskell (invited talk)

Abstract

Functional programming is becoming increasingly popular in artistic areas such as algorithmic music composition. Euterpea and Kulitta are two libraries for working with music in Haskell. Euterpea is a library for representing and manipulating basic musical structures, and is useful both in a pedagogical setting to teach functional programming through the arts and as a tool to create complex pieces of algorithmic music. Kulitta is a framework for automated composition that addresses music at a more abstract level than Euterpea, capturing aspects of musical style through geometric models and probabilistic grammars. Both of these libraries leverage Haskell’s pure functional nature and strong type system to achieve versatile, yet concise designs that allow the creation of diverse and interesting music. Features from these libraries have also been integral in the design of newer systems for natural language processing and artificial intelligence in the musical domain. This talk will explore challenges presented by creating these kinds of domain-specific embedded languages for working with music, and how taking functional approaches to them yields elegant solutions.

Document Details

Document Type
Pub Defense Publication
Publication Date
Sep 07, 2017
Source ID
10.1145/3156695.3127334

Entities

People

  • Donya Quick

Organizations

  • Defense Advanced Research Projects Agency
  • National Science Foundation
  • Stevens Institute of Technology

Tags

Fields of Study

  • Computer science

Readers

  • Computational Linguistics
  • Speech Processing/Speech Recognition.
  • Systems Analysis and Design

Technology Areas

  • AI & ML
  • AI & ML - Machine Translation