diff options
| author | Bartosz Nitka <niteria@gmail.com> | 2016-05-25 09:25:51 -0700 |
|---|---|---|
| committer | Bartosz Nitka <niteria@gmail.com> | 2016-05-25 09:26:05 -0700 |
| commit | 961ed26b69292f6bfb75cd2209ea0c67e77abf7b (patch) | |
| tree | bc850da826856fefb59eb1ecb6429bc9af619c65 | |
| parent | ac38c025b99868d348e3797e85a4af9c6d6377ac (diff) | |
| download | haskell-961ed26b69292f6bfb75cd2209ea0c67e77abf7b.tar.gz | |
Fix broken links to mdo papers
There's no guarantee that the links will work in the future.
Is there a more future-proof solution to this?
Test Plan: none
Reviewers: bgamari, austin, simonmar
Reviewed By: simonmar
Subscribers: thomie, simonmar
Differential Revision: https://phabricator.haskell.org/D2266
| -rw-r--r-- | docs/users_guide/glasgow_exts.rst | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/docs/users_guide/glasgow_exts.rst b/docs/users_guide/glasgow_exts.rst index c48812cdcb..a8a7f8f359 100644 --- a/docs/users_guide/glasgow_exts.rst +++ b/docs/users_guide/glasgow_exts.rst @@ -721,9 +721,9 @@ As you can guess ``justOnes`` will evaluate to ``Just [-1,-1,-1,...``. GHC's implementation the mdo-notation closely follows the original translation as described in the paper `A recursive do for -Haskell <https://sites.google.com/site/leventerkok/recdo.pdf>`__, which +Haskell <http://leventerkok.github.io/papers/recdo.pdf>`__, which in turn is based on the work `Value Recursion in Monadic -Computations <http://sites.google.com/site/leventerkok/erkok-thesis.pdf>`__. +Computations <http://leventerkok.github.io/papers/erkok-thesis.pdf>`__. Furthermore, GHC extends the syntax described in the former paper with a lower level syntax flagged by the ``rec`` keyword, as we describe next. @@ -784,7 +784,7 @@ can be rather delicate: in particular, we would like the knots to be wrapped around as minimal groups as possible. This process is known as *segmentation*, and is described in detail in Section 3.2 of `A recursive do for -Haskell <https://sites.google.com/site/leventerkok/recdo.pdf>`__. +Haskell <http://leventerkok.github.io/papers/recdo.pdf>`__. Segmentation improves polymorphism and reduces the size of the recursive knot. Most importantly, it avoids unnecessary interference caused by a fundamental issue with the so-called *right-shrinking* axiom for monadic @@ -793,7 +793,7 @@ recursion. In brief, most monads of interest (IO, strict state, etc.) do performing segmentation can cause unnecessary interference, changing the termination behavior of the resulting translation. (Details can be found in Sections 3.1 and 7.2.2 of `Value Recursion in Monadic -Computations <http://sites.google.com/site/leventerkok/erkok-thesis.pdf>`__.) +Computations <http://leventerkok.github.io/papers/erkok-thesis.pdf>`__.) The ``mdo`` notation removes the burden of placing explicit ``rec`` blocks in the code. Unlike an ordinary ``do`` expression, in which |
