Effective Haskell
Discord channel: #haskell
Discord server:
Meetup:
Jitsi:
Chapter 3 June 26, 2023 | Presenter |
---|---|
Working With Basic Haskell Types | Sergey - June 26 |
Writing Type Annotations for Functions | Nixon - June 26 |
Reading Type Errors | Sergey - June 26 |
Working with Polymorphic Functions | Jens - June 26 |
Exploring The Type Space of an Application with Undefined | Jens - June 26 |
Getting Help from Type Holes | Sergey |
Looking at the Type of main | Sergey |
Exercise - Undefined | |
Exercise - Understanding Functions By Their Type | |
Exercise - Filling In Type Holes |
Chapter 2 May 15, 2023 | Presenter |
---|---|
Writing Code Using Lists | Jens - May 15 |
Destructuring Values with Pattern Matching | Nixon - May 29 |
Understanding How Programs Are Evaluated | Sergey - May 29 |
Hands-On With Infinite Fibonacci Numbers | Jens |
Exercise - Reversing A List With Folds (optional) | Jens |
Exercise - Zipping Lists (optional) | Sergey |
Exercise - Implementing concatMap (optional) | Sergey |
Exercise - Thinking About Maps and Folds (optional) | Jens |
Exercise - Folds and Infinite lists (optional) |
Chapter 1 April 17, 2023 | Presenter |
---|---|
Exploring Haskell Interactively | Casey - April 17 |
Writing Your First Haskell Program | Casey - April 17 |
Formatting Haskell Code | Casey - April 17 |
Creating New Variables | Casey - April 17 |
Writing Functions | Jens - May 1 |
Precedence, Operators, and Fixity | Sergey - May 1 |
Creating Local Variables Using Let Bindinngs | Sergey - May 1 |
Running Code Conditionally Using Branches | Sergey - May 1 |
Looping | Nixon - May 1 |
Exercise - Factorials (optional) | Nixon - May 15 |
Exercise - The Fibonnacci Sequence (optional) | Jens - May 15 |
Exercise - Manual Currying (optional) | Jens - May 15 |
( Zoom: )