# Introducing Functors, Applicatives, and Monads

Get introduced to functors, applicatives, and monads.

## We'll cover the following

## Functors and monads

**Functors** and **monads** are two important types of objects in functional programming. They have their roots in some fairly abstract maths, but, here, we will focus on their practical benefits.

Essentially, what they do is wrap a value. The wrapper then controls how functions are applied to the value. It allows us to extend the capabilities of ordinary functions, for example: to make them work automatically with collections or to allow them to cope with values that might not exist (called optionals in some languages).

In fact, there are three related types:

Get hands-on with 1200+ tech skills courses.