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 contentsComputer 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
Others related eBooks about The Haskell School of Music
Gradle Succinctly
Download free course Gradle Succinctly, pdf file on 111 pages by José Roberto Olivas Mendoza....
Exploring Cloud Computing
Download free course Exploring Cloud Computing, pdf file on 121 pages by Michael Wittig, Andreas Wittig....
HackSpace Magazine: Issue 46
Download free course HackSpace Magazine: Issue 46, pdf file on 116 pages by HackSpace Team....
Mastering Ethereum
Download free course Mastering Ethereum, pdf file on 424 pages by Andreas M. Antonopoulos, Gavin Wood....
XSLT Tutorial in PDF
Download XSLT Tutorial in PDF, free training document in 47 pages by Dan Olteanu....
Probability and Statistics: A Course for Physicists and Engineers
This book offers an introduction to concepts of probability theory, probability distributions relevant in the applied sciences, as well as basics of sampling distributions, estimation and hypothesis testing. As a companion for classes for engineers and scientists, the book also covers applied topi...
Automating Manufacturing Systems with PLCs
This is a manuscript for a PLC based control system book that is currently being used for teaching an undergraduate controls course - Manufacturing Controls. The course and book focus on the Allen Bradley family of controllers, thus allowing a deeper topic coverage than is normal in PLC books....
Migrating to Cloud-Native Application Architectures
Download free course Migrating to Cloud-Native Application Architectures, pdf file on 58 pages by Matt Stine....
Black book for virus and hacking
Download free ebook under creative common license about virus and hacking created by Marc ludwig....
Tutorial Cryptography with ARC4 in PDF
Download PDF tutorial about ARC4 stream cipher algorithm, and how to use it in a very simple application on the nRF24L01...