# Monad Transformers
Monad Transformers make it easy to compose [[Monads]], common pattern in [[Haskell]]. Obviously based on [[Category Theory]], and important for [[Functional Programming]].
I'm not sure easy such things would be to formulate in say, [[Typescript]], or if it even makes sense there.
[[2022-06-22]]
Monad Transformers allow for [[Composition]] of [[Monads]]. I think that just for that reason, it would be good to get a really good internalized sense for them.
## Links
See the great [[Haskell for Imperative Programmers]] series on Youtube, especially this video [Monad Transformers](https://youtu.be/UPb83JiGiIY) .
This is the Haskell [mtl: Monad classes, using functional dependencies](https://hackage.haskell.org/package/mtl) library.
This is a javascript implementation: [GitHub - boris-marinov/monad-transformers: Practical monad transformers for JS.](https://github.com/boris-marinov/monad-transformers)
This is the original article that introduced the concept (I think): [Functional Programming with Overloading and Higher-Order Polymorphism](https://web.cecs.pdx.edu/~mpj/pubs/springschool.html)
Here is a video of someone going through the online tutorial at [[Monday Morning Haskell]]: [Functors — Monday Morning Haskell](https://mmhaskell.com/monads/functors)
- [Journey to Monad Transformers](https://www.youtube.com/watch?v=xRy-aiRGBFM)