Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tweag/awesome-learning-haskell
A collection of resources which were useful to Tweagers for learning Haskell and its various aspects
https://github.com/tweag/awesome-learning-haskell
List: awesome-learning-haskell
Last synced: 2 days ago
JSON representation
A collection of resources which were useful to Tweagers for learning Haskell and its various aspects
- Host: GitHub
- URL: https://github.com/tweag/awesome-learning-haskell
- Owner: tweag
- Created: 2022-06-09T13:49:12.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-07-06T10:45:57.000Z (over 2 years ago)
- Last Synced: 2024-05-19T21:02:18.319Z (6 months ago)
- Size: 29.3 KB
- Stars: 401
- Watchers: 38
- Forks: 20
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- fucking-lists - awesome-learning-haskell
- awesome-haskell-videos - awesome-learning-haskell - A collection of resources for learning Haskell. (Related)
- lists - awesome-learning-haskell
- ultimate-awesome - awesome-learning-haskell - A collection of resources which were useful to Tweagers for learning Haskell and its various aspects. (Other Lists / PowerShell Lists)
README
# awesome-learning-haskell
A collection of resources which were useful to Tweagers for learning Haskell and its various aspects
- [General resources](#general-resources)
- [Books](#books)
- [Videos](#videos)
- [Specific topics](#specific-topics)
- [Category theory](#category-theory)
- [Dependent types](#dependent-types)
- [Deriving](#deriving)
- [Design patterns](#design-patterns)
- [Extensions](#extensions)
- [Functional programming](#functional-programming)
- [Functors, applicatives and monads](#functors-applicatives-and-monads)
- [Generic programming](#generic-programming)
- [IO](#io)
- [Optics](#optics)
- [Parser combinators](#parser-combinators)
- [Performance](#performance)
- [Profunctors](#profunctors)
- [String types](#string-types)
- [Traps and pitfalls](#traps-and-pitfalls)## General resources
### Books
- [Algebra-Driven Design](https://leanpub.com/algebra-driven-design) by [Sandy Maguire](https://reasonablypolymorphic.com/)
- [Haskell in Depth](https://www.manning.com/books/haskell-in-depth) by [Vitaly Bragilevsky](https://twitter.com/VBragilevsky)
- [Haskell Programming from first principles](https://haskellbook.com/) by [Christopher Allen](https://twitter.com/bitemyapp) and [Julie Moronuki](https://twitter.com/argumatronic)
- [Learn Haskell by building a blog generator](https://lhbg-book.link/) by [Gil Mizrahi](https://twitter.com/_gilmi)
- [Programming in Haskell](https://www.cs.nott.ac.uk/~pszgmh/pih.html) by [Graham Hutton](https://twitter.com/haskellhutt)
- [The simple Haskell handbook](https://marcosampellegrini.com/simple-haskell-book) by [Marco Sampellegrini](https://twitter.com/_alpacaaa)
- [Thinking with Types](https://thinkingwithtypes.com/) by [Sandy Maguire](https://reasonablypolymorphic.com/)### Videos
- [C9 Lectures: Erik Meijer - Functional Programming Fundamentals](https://docs.microsoft.com/en-us/shows/c9-lectures-erik-meijer-functional-programming-fundamentals/)
## Specific topics
### Category theory
- [Category theory for programmers](https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/) by [Bartosz Milewski](https://twitter.com/BartoszMilewski)
- [Programming with categories](https://www.youtube.com/playlist?list=PLhgq-BqyZ7i7MTGhUROZy3BOICnVixETS) by [Topos Institute](https://topos.site/)### Dependent types
- [An introduction to typeclass metaprogramming](https://lexi-lambda.github.io/blog/2021/03/25/an-introduction-to-typeclass-metaprogramming/) by [Alexis King](https://twitter.com/lexi_lambda)
- [Introduction to Singletons](https://blog.jle.im/entries/series/+introduction-to-singletons.html) by [Justin Le](https://twitter.com/mstk)### Deriving
- [Deriving](https://kowainik.github.io/posts/deriving) by [Veronika Romashkina](https://twitter.com/vrom911) and [Dmitrii Kovanikov](https://twitter.com/ChShersh/)
### Design patterns
- [The handle pattern](https://jaspervdj.be/posts/2018-03-08-handle-pattern.html) by [Jasper Van der Jeugt](https://twitter.com/jaspervdj)
- [The service pattern](https://www.schoolofhaskell.com/user/meiersi/the-service-pattern) by Simon Meier### Extensions
- [Overview of all language extensions](https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/table.html)
### Functional programming
- [What's Functional Programming All About](https://www.lihaoyi.com/post/WhatsFunctionalProgrammingAllAbout.html)
### Functors, applicatives and monads
- [Functors, Applicatives, And Monads In Pictures](https://adit.io/posts/2013-04-17-functors,_applicatives,_and_monads_in_pictures.html) by [Adit Bhargava](https://twitter.com/_egonschiele)
### Generic programming
- [An introduction to typeclass metaprogramming](https://lexi-lambda.github.io/blog/2021/03/25/an-introduction-to-typeclass-metaprogramming/) by [Alexis King](https://twitter.com/lexi_lambda)
- [Datatype-generic programming](https://www.youtube.com/watch?v=pwnrfREbhWY) by [Andres Löh](https://twitter.com/kosmikus)### IO
- [Input and Output](http://learnyouahaskell.com/input-and-output)
- [Introduction to IO](https://wiki.haskell.org/Introduction_to_IO)
- [Introduction to Haskell IO](https://www.haskellforall.com/2013/01/introduction-to-haskell-io.html) by [Gabriella Gonzales](https://twitter.com/GabriellaG439)
- [Introduction to Haskell IO/Actions](https://wiki.haskell.org/Introduction_to_Haskell_IO/Actions)### Optics
- [Don't Fear the Profunctor Optics](https://github.com/hablapps/dontfeartheprofunctoroptics) by [Jesús López-González](https://twitter.com/jeslg)
- [Optics By Example](https://leanpub.com/optics-by-example) by [Chris Penner](https://twitter.com/chrislpenner)### Parser Combinators
- [Megaparsec Tutorial](https://markkarpov.com/tutorial/megaparsec.html) by [Mark Karpov](https://markkarpov.com/)
### Performance
- [Parallel and Concurrent Programming in Haskell](https://www.oreilly.com/library/view/parallel-and-concurrent/9781449335939/) by [Simon Marlow](https://twitter.com/simonmar)
### Profunctors
- [Deconstructing Lambdas—An Awkward Guide to Programming Without Functions](https://www.youtube.com/watch?v=xZmPuz9m2t0) by [Chris Penner](https://twitter.com/chrislpenner)
### String types
- [Eat Haskell String Types for Breakfast](https://free.cofree.io/2020/05/06/string-types/) by Ziyang Liu
- [Haskell String Types](https://www.alexeyshmalko.com/2015/haskell-string-types/) by Alexey Shmalko
- [String types](https://www.fpcomplete.com/haskell/tutorial/string-types/) by [FPComplete](https://twitter.com/FPComplete)
- [Untangling Haskell's Strings](https://mmhaskell.com/blog/2017/5/15/untangling-haskells-strings) by [Monday Morning Haskell](https://twitter.com/HaskellMonday)### Traps and pitfalls
- [Asynchronous Exception Handling in Haskell](https://www.fpcomplete.com/blog/2018/04/async-exception-handling-haskell/) by [Michael Snoyman](https://twitter.com/snoyberg)
- [Haskell's Dangerous Functions](https://github.com/NorfairKing/haskell-dangerous-functions) by [Tom Sydney Kerckhove](https://twitter.com/kerckhove_ts)