I've gone over functors, applicative functors and monad in learnyouahaskell, however I'm struggling to understand the exact characteristics that differentiate these 3 language elements.
Does anyone have a simple example that show the differences of these concepts?