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: 56
Created: 2022-02-03
License: CC BY
Author(s): Paul Hudak, Donya Quick
The Haskell School of Music

Warning: Trying to access array offset on false in /home/tutovnfz/public_html/article.php on line 233

Others Haskell Tutorials

Download Haskell PDF Tutorial

Haskell tutorial for professionals

Haskell: Functional Programming with Types

Happy Learn Haskell Tutorial

Haskell Tutorial for C Programmers

Others related eBooks about The Haskell School of Music

Platform Embedded Security Technology Revealed

Platform Embedded Security Technology Revealed is an in-depth introduction to Intel's plat..., download free Security Technology tutorial in PDF (272 pages) created by Xiaoyu Ruan ....

Agile Development for Serverless Platforms

You need more than great dev tools to release great software; you need an efficient pipeli..., download free Agile Development tutorial in PDF (124 pages) created by ....

A Friendly Introduction to Mathematical Logic

At the intersection of mathematics, computer science, and philosophy, mathematical logic examines the power and limitations of formal mathematical thinking. In this expansion of Leary's user-friendly 1st edition, readers with no previous study in the field are introduced to the basics of model theor...

Reversible Computation: Extending Horizons of Computing

Download free course Reversible Computation: Extending Horizons of Computing, pdf file on 250 pages by Irek Ulidowski, Ivan Lanese, Ulrik Pagh Schultz, Carla Ferreira....

Made With Creative Commons

Download free course Made With Creative Commons, pdf file on 176 pages by Paul Stacey, Sarah Hinchliff Pearson....

Open Source Systems

Download free course Open Source Systems, pdf file on 217 pages by Vladimir Ivanov, Artem Kruglov, Sergey Masyagin, Alberto Sillitti, Giancarlo Succi....

Odoo Development Essentials

Odoo is a powerful and fast-growing business application platform. Beginning with setting ..., download free Odoo tutorial in PDF (214 pages) created by Daniel Reis ....

New Frontiers in Graph Theory

Nowadays, graph theory is an important analysis tool in mathematics and computer science. Because of the inherent simplicity of graph theory, it can be used to model many different physical and abstract systems such as transportation and communication networks, models for business administration, po...

Arduino Programming Notebook

A beginner's reference to the programming syntax of the Arduino microcontroller. Includes information on program structure, variables, datatypes, arithmetic, constants, flow control, and most of the common functions of the core library. Also includes an appendix with schematics and simple programs...

Software Innovation: Eight Work-style Heuristics for Creative System Developers

Software Innovation: eight work-style heuristics for creative system developers. ...