-Besides the example shown above Wadler shows also shows the usefulness of
-monads in a setting where you use lists, arrays and recursive descent parsers.
-These examples show the flexibility and ease that monads bring. Especially for
-input/output the monadic pattern is useful. If one wants to capture
-side-effects, instead of reimplementing every function for the particular side
-effects you can just write the monadic operations and let the monads handle the
-rest.
-
-Even after more than 20 years the monadic pattern is used throughout the
-functional programming world and is incorporated in all the functional
-programming languages used by the academic and by everyday programmers such as
-\emph{Haskell} and \emph{Clean}.
+Besides the example shown above, Wadler shows also shows the usefulness of
+monads for lists, arrays and recursive descent parsers. While these examples
+strengthen the proposed solution they do not necessarily provide extra or
+stronger proof and are thus not treated here.
+
+Especially for input/output the monadic pattern is useful. If one wants to
+capture side-effects, instead of reimplementing every function for the
+particular side effects you can just write the monadic operations and let the
+monads handle the rest.
+
+Even after more than 20 years the monadic pattern has proven to be very useful.
+For example in the programming language \emph{Haskell} all the input and output
+are handled using a specialized monadic structure. Monadic constructions are
+also incorporated in the standard library/prelude of pure functional languages
+such as \emph{Haskell} and \emph{Clean}. Even in impure languages the
+constructions turns out to be useful and thus monadic structures are available
+as library options or extensions in languages such as \emph{Scheme},
+\emph{Perl}, \emph{Python}, \emph{Scala} and many more.