The Haskell School of Music



Download free course The Haskell School of Music, pdf file on 441 pages by Paul Hudak, Donya Quick.
This free 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 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.

This is a textbook on functional programming in Haskell, with a strong focus on computer music concepts and applications. The book describes Euterpea, a computer music library developed in Haskell, that allows programming computer music applications both at the note level and the signal level.

The book also teaches functional programming in Haskell from scratch. It is suitable for use in the classroom to teach functional programming concepts, Haskell language details, computer music and audio processing concepts and applications - or all of the above.

Table of contents

  • Computer Music, Euterpea, and Haskell
  • Simple Music
  • Polymorphic & Higher-Order Functions
  • A Musical Interlude
  • Syntactic Magic
  • More Music
  • Qualified Types and Type Classes
  • Interpretation and Performance
  • Self-Similar Music
  • Proof by Induction
  • An Algebra of Music
  • L-Systems and Generative Grammars
  • Random Numbers ... and Markov Chains
  • From Performance to Midi
  • Basic Input/Output
  • Higher-Order Types and Monads
  • Musical User Interface
  • Sound and Signals
  • Euterpea's Signal Functions
  • Spectrum Analysis
  • Additive and Subtractive Synthesis
  • Amplitude and Frequency Modulation
  • Physical Modelling
  • Sound Effects
  • The PreludeList Module
  • Haskell's Standard Type Classes
  • Built-in Types Are Not Special
  • Pattern-Matching Details
Pages : 441
Size : 4.1 MB
File type : PDF
Downloads: 34
Created: 2022-02-03
License: CC BY
Author(s): Paul Hudak, Donya Quick
The Haskell School of Music

Others Haskell Tutorials

Haskell tutorial for professionals

Haskell Tutorial for C Programmers

Haskell: Functional Programming with Types

Happy Learn Haskell Tutorial

Download Haskell PDF Tutorial

Others related eBooks about The Haskell School of Music

Raspberry Pi Projects Book, Volume 5

The Raspberry Pi is loved the world over by educators and makers thanks to its tiny size a..., download free Raspberry Pi tutorial in PDF (200 pages) created by Wes Archer ....

Eye Tracking Methodology

Download free course Eye Tracking Methodology, pdf file on 387 pages by Andrew T. Duchowski....

Category Theory for Programmers

In this book, the author illustrates all major concepts of Category Theory using computer code. You are probably aware that functional languages are closer to math than the more popular imperative languages. They also offer more abstracting power. So a natural temptation would be to say: You must le...

Haskell Notes for Professionals

Download free course Haskell Notes for Professionals, pdf file on 229 pages by Stack Overflow Community....

Pharo by Example

Pharo is a modern open-source development environment for the classic Smalltalk-80 programming language. This book, intended for both students and developers, will guide you gently through the language and tools by means of a series of examples and exercises. ...

GNU GREP and RIPGREP

Download free course GNU GREP and RIPGREP, pdf file on 111 pages by Sundeep Agarwal....

Ray Tracing Gems

This book is a must-have for anyone serious about rendering in real time. With the announc..., download free Ray tutorial in PDF (607 pages) created by Eric Haines ....

Automated Machine Learning: Methods, Systems, Challenges

This open access book presents the first comprehensive overview of general methods in Automated Machine Learning (AutoML), collects descriptions of existing systems based on these methods, and discusses the first series of international challenges of AutoML systems. ...

Making Servers Work

This book highlights practical sysadmin skills, common architectures that you'll encounter..., download free Making Servers tutorial in PDF (280 pages) created by ....

Learning Minecraft Bukkit

Download free course Learning Minecraft Bukkit, pdf file on 60 pages by Stack Overflow Community....