summaryrefslogtreecommitdiffstats
path: root/site/opinions/MonadTransformers.org
diff options
context:
space:
mode:
Diffstat (limited to 'site/opinions/MonadTransformers.org')
-rw-r--r--site/opinions/MonadTransformers.org13
1 files changed, 6 insertions, 7 deletions
diff --git a/site/opinions/MonadTransformers.org b/site/opinions/MonadTransformers.org
index 7296f08..0424c7b 100644
--- a/site/opinions/MonadTransformers.org
+++ b/site/opinions/MonadTransformers.org
@@ -1,12 +1,12 @@
-#+BEGIN_EXPORT html
-<h1>Monad Transformers are a Great Abstraction</h1>
+#+TITLE: Monad Transformers are a Great Abstraction
+
+#+SERIES: ../opinions/index.html
+#+BEGIN_EXPORT html
<p>This article has originally been published on <span
id="original-created-at">July 15, 2017</span>.</p>
#+END_EXPORT
-#+OPTIONS: toc:nil
-
#+BEGIN_EXPORT html
<div id="history">site/opinions/MonadTransformers.org</div>
#+END_EXPORT
@@ -14,8 +14,8 @@ id="original-created-at">July 15, 2017</span>.</p>
Monads are hard to get right. I think it took me around a year of Haskelling to
feel like I understood them. The reason is, to my opinion, there is not such
thing as /the/ Monad. It is even the contrary. When someone asks me how I would
-define Monads in only a few words, [[https://techn.ical.ist/@lthms/590439][I say Monad is a convenient formalism to
-chain specific computations]]. Once I’ve got that, I started noticing “monadic
+define Monads in only a few words, I say monads are a convenient formalism to
+chain specific computations. Once I’ve got that, I started noticing “monadic
construction” everywhere, from the Rust ~?~ operator to the [[https://blog.drewolson.org/elixirs-secret-weapon/][Elixir ~with~
keyword]].
@@ -46,7 +46,6 @@ issue with the Monad Transformers.
#+BEGIN_SRC diff
-type Builder = StateT Text IO
+type Builder = StateT Text (ReaderT Language IO)
-
#+END_SRC
As you may have already understood, I wasn't using the “raw” ~State~ Monad, but