Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
51 lines (47 sloc) 1.85 KB

AFP RWH coverage 2015

This is a summary of what parts of the Real World Haskell book students should know after the course (including some parts that students should know before the course).

Note that the AFP course also covers some aspects not covered by the RWH book: parts of the lectures on EDSLs (L2), Program transformation (L3, L4), and Type based modelling (L11, L12, L13), and the guest lectures by Emil (L9) and Cezar (L14).

Summary:

  • Covered chapters: 1-7,8.6,9-11,13,14,15,18,19
  • Useful for the labs: 22,23
  • Cursory reading: 8,12,16,24,26,28
  • Not covered (but a good read!): 17,20,21,25,27

Details:

  • Covered chapters: 1-7,8.6,9-11,13-15,18,19
    • 1 Getting Started
    • 2 Types and Functions
    • 3 Defining Types, Streamlining Functions
    • 4 Functional Programming
    • 5 Writing a Library: Working with JSON Data
    • 6 Using Typeclasses
    • 7 I/O
    • 8.6. An important Aside: Writing Lazy Functions
    • 9 I/O Case Study: A Library for Searching the Filesystem
    • 10 Code Case Study: Parsing a Binary Data Format
    • 11 Testing and Quality Assurance
    • 13 Data Structures
    • 14 Monads
    • 15 Programming with Monads
    • 18 Monad Transformers
    • 19 Error Handling
  • Useful for the labs: 22,23
    • 22 Extended Example: Web Client Programming
    • 23 GUI Programming with gtk2hs
  • Cursory reading: 8,12,16,24,26,28
    • 8 Efficient File Processing, Regular Expressions, and Filename Matching
    • 12 Barcode Recognition
    • 16 Using Parsec
    • 24 Concurrent and Multicore Programming
    • 26 Advanced Library Design: Building a Bloom Filter
    • 28 Software Transactional Memory
  • Not covered (but a good read!): 17,20,21,25,27
    • 17 Interfacing with C: The FFI
    • 20 Systems Programming in Haskell
    • 21 Using Databases
    • 25 Profiling and Optimization
    • 27 Sockets and Syslog
You can’t perform that action at this time.