Web Servers, at a low level

This course explores what a web server is, starting from how we use sockets and the network and moving toward a foundation for higher-level libraries for building web applications. On the way, you will learn:

  • What is a socket
  • How to read the HTTP specification
  • The difference between a strict ByteString, a lazy ByteString, and a byte string Builder
  • What “chunked transfer coding” means in HTTP, and what that has to do with lazy I/O
  • How to use attoparsec to parse an HTTP request
  • How to use the pipes library to parse streaming input

Join Type Classes for courses and projects to get you started and make you an expert in FP with Haskell.