Effective Haskell • Rebecca Skinner & Emily Pillmore • GOTO 2024

Learn practical Haskell programming with experts Rebecca Skinner and Emily Pillmore. Topics include simplicity, let lifting, laziness, type level programming, monad transformers, micro-benchmarking, memory layouts, domain modeling, and GHC's type system.

Key takeaways
  • Keep it simple - Emphasize the importance of simplicity and practicality when learning Haskell.
  • Let lifting - Highlight the concept of let lifting and how it can reduce tedious code and improve readability.
  • Laziness - Explain.defineProperty the concept of laziness in Haskell and how it can be both a blessing and a curse.
  • Type level programming - Discuss the benefits of type level programming and how it can enable more expressive and efficient code.
  • MTL - Cover the concept of Monad Transformers (MTL) and how they can be used to compose monads.
  • Micro-benchmarking - Emphasize the importance of micro-benchmarking in understanding the performance and behavior of Haskell code.
  • Memory layouts - Discuss the concept of memory layouts and how they can impact the performance of Haskell code.
  • Domain modeling - Highlight the importance of domain modeling and how it can help developers build more accurate and efficient models of real-world systems.
  • GHC and the type system - Discuss the role of the Glasgow Haskell Compiler (GHC) and the type system in ensuring the correctness of Haskell code.