Designing a web server application presents interesting scenarios that let us explore many of Elixir’s features.

  • How do we handle a request that has parameters?

  • What happens if a route doesn’t match and how should we respond?

  • Can we transform only specific requests or responses, and if so, how?

The solutions require pattern matching techniques and multi-clause functions. We explore these powerful Elixir features in modules 7 and 8 released today in our Elixir/OTP course.