
Learn functional programming and the Haskell programming language through algorithmic music composition and virtual instrument design.
The beauty of this book is that it’s a very good way of learning Haskell and functional programming, but it’s also interesting in how it covers concepts related to music theory. If you want to join art and computing, this is your book.
Apart from that, it gives you music-related programming tasks to complete. The best way of learning is by doing things!… I loved this book when I discovered it.
Some others worth trying depending on your personal choice and bias for a particular PL:
Euterpea - Haskell library for music creation [0].
Extempore - Scheme-based livecoding environment with a low-level language too - xtlang [1].
Grace (Common Music) - Scheme-based livecoding with crossplatform IDE [2].
Sporth (used by AudioKit) - Forth-based, low-level livecoding of music.
I think Grace is probably the most self-contained. The single executable for Linux, Mac, and Windows comes with samples and a choice of a scheme-based language, or a more simplified, more Algol-like one called SAL.
I like extempore because of its CAAS (compiler as a service) model, scheme language, and the ability to create from the note up, or to create sounds from scratch (sine waves and such).
I splurged for the Haskell School of Music book based on the Euterpea library that was originally written by Paul Hudak, but finished by one of his students, Donya Quick. This is how I originally learned Haskell, and it was a lot of fun and educational to boot.
[0] https://www.euterpea.com/
[1] https://extemporelang.github.io/
[2] http://commonmusic.sourceforge.net/
[3] https://pbat.ch/proj/sporth.htmlhttp://www.cs.tufts.edu/~kfisher/teaching.html
https://www.inf.ed.ac.uk/teaching/courses/inf1/fp/ (P Wadler)
http://www.cs.princeton.edu/~dpw/cos441-11/schedule.htm
http://blog.davidterei.com/2011/10/stanford-haskell-course.h...
http://www.seas.upenn.edu/~cis194/
________________
also the Apress "Beginning Haskell" looks pretty good, tho the writing isn't perfectly clear. The example topics and sample code look good, and that's what mostly counts.
http://www.amazon.com/Beginning-Haskell-A-Project-Based-Appr...
The books by Hutton and Simon Thompson ("Craft of FP" 3rd ed)are good intros as well. Haskell school of music is really good, but not sure for people who aren't versed in music topics (harmony/theory, composition, MIDI, DSP.
http://www.amazon.com/Programming-Haskell-Graham-Hutton/dp/0...
http://haskell.cs.yale.edu/euterpea/haskell-school-of-music/