Euterpea: From Signals to Symphonies Using Haskell

Paul Hudak, Yale University

Haskell is a pure functional programming language, noted for features such as lazy evaluation, higher-order functions, a powerful type system (polymorphism, type classes, higher-order kinds), and computational abstractions (functors, monads, arrows). In this talk many of these features will be demonstrated in the context of computer music , both at the note level (representation, interpretation, algorithmic composition) and the signal level (audio processing, sound synthesis, instrument design). This will be a “show-by-example” talk - no knowledge of Haskell or music theory is assumed, but hopefully the examples will convey the general nature of Haskell and why it’s a great platform for computer music applications.

Speaker Biography

Paul Hudak is a Professor in the Department of Computer Science at Yale University. He has been on the Yale faculty since 1982, and was Chairman from 1999-2005. He received a BE from Vanderbilt University in 1973, an MS from MIT in 1974, and a PhD from the University of Utah in 1982. Professor Hudak helped to organize and chair the Haskell Committee, was co-Editor of the first Haskell Report in 1988, and has written a popular Haskell textbook. He has been a leader in the design of domain specific languages (embedded in Haskell) for a diverse set of applications, with a focus most recently on computer music and audio processing. With two of his colleagues, he designed the new Computing and the Arts major at Yale in 2009. Hudak was Editor-in-Chief of the Journal of Functional Programming and a founding member of IFIP Working Group 2.8 on Functional Programming. Among his honors, Professor Hudak is an ACM Fellow, and is a recipient of an IBM Faculty Development Award and an NSF Presidential Young Investigator Award. In 2009 he was appointed Master of Saybrook College at Yale University.