Some Books I Have Read, and Recommend
- Information Theory for Intelligent People by Simon DeDeo. This is a 13 page introduction to information theory. I first encountered entropy and the Kullback-Leibler divergence while studying reinforcement learning, and this paper gave me an intuitive understanding of what they mean and made them less intimidating.
Programming in Haskell, 2nd Edition, by Graham Hutton. I recommend starting with this book if you already know another programming language and want to learn Haskell. I was especially fond of Chapter 9 which lead me down the rabbit hole of rewriting.
Thinking with Types by Sandy Maguire. This book teaches the many language extensions in the GHC Haskell compiler. Even if you don’t intend to do a lot of type level programming yourself, it’s nice to know what’s going on when you see weird squiggles and ticks in the type signatures of libraries.