The Haskell School of Music
From Signals to Symphonies

Authors:

Learn functional programming and the Haskell programming language through algorithmic music composition and virtual instrument design.

Language: English
Cover of the book The Haskell School of Music

Subject for The Haskell School of Music

Approximative price 62.44 €

In Print (Delivery period: 14 days).

Add to cartAdd to cart
Publication date:
398 p. · 15.6x23.5 cm · Hardback
This book explores the fundamentals of computer music and functional programming through the Haskell programming language. Functional programming is typically considered difficult to learn. This introduction in the context of creating music will allow students and professionals with a musical inclination to leverage their experience to help understand concepts that might be intimidating in more traditional computer science settings. Conversely, the book opens the door for programmers to interact with music by using a medium that is familiar to them. Readers will learn how to use the Euterpea library for Haskell (http://www.euterpea.com) to represent and create their own music with code, without the need for other music software. The book explores common paradigms used in algorithmic music composition, such as stochastic generation, musical grammars, self-similarity, and real-time interactive systems. Other topics covered include the basics of signal-based systems in Haskell, sound synthesis, and virtual instrument design.
1. Computer music, Euterpea, and Haskell; 2. Simple music; 3. Polymorphic and higher-order functions; 4. A musical interlude; 5. Syntactic magic; 6. More music; 7. Qualified types and type classes; 8. From music to MIDI; 9. Interpretation and performance; 10. Self-similar music; 11. Proof of induction; 12. An algebra of music; 13. L-Systems and generative grammars; 14. Random numbers … and Markov chains; 15. Basic input/output; 16. Higher-order types and monads; 17. Musical user interfaces; 18. Sound and signals; 19. Euterpea's signal functions; 20. Spectrum analysis; 21. Additive and subtractive synthesis; 22. Amplitude and frequency modulation; 23. Physical modeling.
Paul Hudak was Professor of Computer Science at Yale University, Connecticut, from 1982 to 2015. He was best known for his contributions to the development of the Haskell programming language. A skilled saxophonist and jazz musician, the combination of his enthusiasm for music and computer science led him to create the Euterpea library for representing music in Haskell.
Donya Quick is Research Assistant Professor of Music and Computation at Stevens Institute of Technology, New Jersey. Her research explores the intersection of artificial intelligence and computational linguistics with music, and includes working on an automated composition system called Kulitta. In addition, she is also involved in the MUSICA project for interactive improvisation and composition by conversion, which is part of the DAPRA Communicating with Computers program.