@suppi I would errata "learn about QuickCheck" to say "learn about property-based tests and try out Hedgehog".

@suppi I would place transformers before parsers because it would make it harder to understand ParserT and lifting, but keep mtl where it is as a broader application.

Follow

@suppi I would split "Extras" into "Pragmatic" and "Theoretical", and place

- optics (Lens, Prism)
- type families
- DSL embeddings with final tagless and free

under "Pragmatic", and

- λ-calculus
- template haskell
- dependent, linear and session types

under "Theoretical".

@jonn I really don't want to mention type level programming in this article. I don't think they are relevant when talking about the bottom of the Haskell pyramid.

Sign in to participate in the conversation
Doma Social

Mastodon server of https://doma.dev.