Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save weakish/d19dc5e4dd7d1e10b0a6ea1f5e0cc8cf to your computer and use it in GitHub Desktop.
Save weakish/d19dc5e4dd7d1e10b0a6ea1f5e0cc8cf to your computer and use it in GitHub Desktop.
#Haskell the Craft of #FunctionalProgramming (3e) #afterwords

Haskell:the Craft of Functional Programming (3rd. Edition)

This book is based on Haskell 2010.

It introduces features of Haskell in the following chapters:

  1. Chapter 13: type class
  2. Chapter 17: laziness
  3. Chapter 18: monad
  4. Chapter 19: DSL
  5. Chapter 20: performance

Thus if you are familiar with ML and feel brave, you can skip Chapters 1-12 and 14-16.

Chapter 9 talks about proof. I was expecting a theorem prover for Haskell. But it turns out just talking about how to manually prove a few pieces of haskell code.

Section 18.4 introduces monad gently based on do notation, instead of the unnecessary introduction of category theory.

Appendix B is Glossary. It contains some inspiring definitions. For example:

Combinator Another name for a function. (p. 544)

Implementation The particular definition which make a design concrete; ... (p. 546)

It also contains glossaries for commodity concepts which I never thought there are names for them. For example:

Juxtaposition Putting one thing next to another; this is the way in which function application is written down in Haskell.

Offside rule The way in which the end of a part of a definition is expressed using the layout of a script, rather than an explicit symbol for the end. (p. 547)


License: 0BSD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment