FreeCourseWeb.com

Everyday Extensions

Master Haskell extensions

Language extensions can be confusing. They change how the compiler works, add functionality, and change the syntax of the official Haskell specification, creating a bunch of possible ways to write Haskell. But changing the language is not as terrifying in practice. Most GHC extensions behave like switches: a feature could be either on or off.

What you’ll learn

Course Content

Requirements

Language extensions can be confusing. They change how the compiler works, add functionality, and change the syntax of the official Haskell specification, creating a bunch of possible ways to write Haskell. But changing the language is not as terrifying in practice. Most GHC extensions behave like switches: a feature could be either on or off.

The list of Haskell extensions is quite extensive and not easy to navigate:

Extensions in Haskell are unavoidable. There are extensions that some developers are addicted to and carry to all their projects. There are popular libraries that heavily rely on extensions and impose them upon their users.

This course is for people who want to understand extensions commonly seen in the wild. We will cover some commonly used extensions and look at a couple of Haskell libraries that can’t be used without extensions to get a practical understanding. By the end of the course, you won’t be blindly copying extensions from one module to another but will carry them along with awareness.

This course requires a basic understanding of Haskell syntax. You don’t need experience working with any of the libraries mentioned in the course.