anchor.diff:  
   === Foldable
   
  -The *Foldable* is generic abstraction of fold operations on a data structure. It consists
  -mainly on two functions: `foldl` and `foldr`. The `foldl` is also known as `reduce`
  -or `inject` in other mainstream programming languages.
  -
  -
  -The both function consists in a identical signature and differes on how them traverse
  -the data structure. Let's take a `foldl` for a little example:
  +The *Foldable* is a generic abstraction for data structures that can be folded. It consists
  +mainly on two functions: `foldl` and `foldr`. `foldl` is also known as `reduce` or `inject`
  +in other mainstream programming languages.
  +
  +
  +Both function have an identical signature and differ in how they traverse the data structure.
  +Let's look at a little example using `foldl`:
   
   [source, clojure]
   ----
  
positive.code: ;; => 15
  ----
  
  And the same operation can be done using the `foldr`:
  
  [source, clojure]
  ----
  
negative.code: 
  .Summary of Clojure types and implemented protocols
  [options="header"]
  |==========================================================================================
  | Name     | Implemented protocols
  | sequence | Semigroup, Monoid, Functor, Applicative, Monad, MonadZero, MonadPlus, Foldable
  | vector   | Semigroup, Monoid, Functor, Applicative, Monad, MonadZero, MonadPlus, Foldable
  | hash-set | Semigroup, Monoid, Functor, Applicative, Monad, MonadZero, MonadPlus
  | hash-map | Semigroup, Monoid
  |==========================================================================================
  
  
  === Where are the State, Reader, Writer and Continuation monads?
  