Skip to content

Latest commit

 

History

History
58 lines (50 loc) · 2.12 KB

File metadata and controls

58 lines (50 loc) · 2.12 KB

Examples in 'Get Programming with Haskell'

  • Lesson 1 Getting Started with Haskell

Unit 1: Foundations of Functional programming

  • Lesson 2 Functions and functional programming
  • Lesson 3 Lambda functions and lexical scope
  • Lesson 4 First-class functions
  • Lesson 5 Closures and partial application
  • Lesson 6 Lists
  • Lesson 7 Rules for recursion and pattern matching
  • Lesson 8 Writing recursive functions
  • Lesson 9 Higher-order functions
  • Lesson 10 Capstone: Functional object-oriented programming with robots!

Unit 2: Introducing types

  • Lesson 11 Type basics
  • Lesson 12 Creating your own types
  • Lesson 13 Type classes
  • Lesson 14 Using type classes
  • Lesson 15 Capstone: Secret messages!

Unit 3: Programming in Types

  • Lesson 16 Creating types with "and" and "or"
  • Lesson 17 Design by Composition - Semigroups and Monoids
  • Lesson 18 Parameterized types
  • Lesson 19 The Maybe type: dealing with missing values
  • Lesson 20 Capstone: Time Series

Unit 4: IO in Haskell

  • Lesson 21 Hello World! - Introducing IO
  • Lesson 22 Interacting with the command line and lazy I/O
  • Lesson 23 Working with text and Unicode
  • Lesson 24 Working with files
  • Lesson 25 Working with binary data
  • Lesson 26 Capstone: Processing binary files and book data

Unit 5: Working with type in a context

  • Lesson 27 The Functor type class
  • Lesson 28 A peek at the Applicative type class: using functions in a context
  • Lesson 29 Lists as a Context: A deeper look at the applicative type class
  • Lesson 30 Introducing the Monad type class
  • Lesson 31 Making Monads easier with do-notation
  • Lesson 32 The List Monad and List Comprehensions
  • Lesson 33 Capstone: SQL-like queries in Haskell

Unit 6 : Organizing code and building Projects

  • Lesson 34 Organizing Haskell code with modules
  • Lesson 35 Building projects with stack
  • Lesson 36 Property testing with QuickCheck
  • Lesson 37 Capstone: Building a prime-number library

Unit 7 Practical Haskell

  • Lesson 38 Errors in Haskell and the Either type
  • Lesson 39 Making HTTP requests in Haskell
  • Lesson 40 Working with JSON data using Aeson
  • Lesson 41 Using databases in Haskell
  • Lesson 42 Efficient, stateful arrays in Haskell