map `f xs` is the list obtained by
applying `f` to each element of `xs`, i.e.,

map f [x1, x2, ..., xn] == [f x1, f x2, ..., f xn] map f [x1, x2, ...] == [f x1, f x2, ...]

>>> map (+1) [1, 2, 3]

Using `ApplicativeDo`: '`fmap f as`' can be
understood as the `do` expression
`Functor` constraint.

do a <- as pure (f a)with an inferred

**Packages**