EDN Admin
Well-known member
We had to cover monads eventually, and there are many great monad tutorials out there (see, for example, here: http://www.haskell.org/haskellwiki/Tutorials#Using_monads http://www.haskell.org/haskellwiki/Tutorials#Using_monads ). In fact, there
are web resources concerned solely with organizing the many monad tutorials available in the wild, and developing new monad tutorials seems to be a popular sport in the Haskell community.
Today, Ralf Lämmels lecture goes back to the roots, essentially revisiting Wadlers "The essence of functional programming"—the 1992 paper that discovered monads and popularized their use in functional programming. Ralf Lämmels lecture and accompanying
code distribution show Wadlers seminal insight: those original scenarios and observations still make sense today. Indeed, Simon Marlow (a Haskell/GHC high priest @ MSR Cambridge) recently noted: "its still the best monad tutorial" (see http://twitter.com/simonmar/status/21397398061
http://twitter.com/simonmar/status/21397398061 ).
Focusing on a few generically useful monads, Dr. Lämmel explains how the work within the interpretation domain. While the lecture also takes a look at the contemporary Haskell library for monads and monad transformers, there are obviously many monads and
associated domains that cannot be covered this time. If you want to learn more about monads, then continue with state threads, IO, parsing, and concurrency (STM).
Slide deck:
http://developers.svn.sourceforge.net/viewvc/developers/repository/ralfs-channel9-lectures/decks/monads.pdf http://developers.svn.sourceforge.net/viewvc/developers/repository/ralfs-channel9-lectures/decks/monads.pdf
Exercises/riddles:
Slide #4 (easy), #6 (modest), #13 (modest), #40 (hard)
Code distribution:
http://developers.svn.sourceforge.net/viewvc/developers/repository/ralfs-channel9-lectures/code/monads/ http://developers.svn.sourceforge.net/viewvc/developers/repository/ralfs-channel9-lectures/code/monads/
Blog post:
http://professor-fish.blogspot.com/2010/09/essence-of-essence-of-functional.html http://professor-fish.blogspot.com/2010/09/essence-of-essence-of-functional.html
View the full article
are web resources concerned solely with organizing the many monad tutorials available in the wild, and developing new monad tutorials seems to be a popular sport in the Haskell community.
Today, Ralf Lämmels lecture goes back to the roots, essentially revisiting Wadlers "The essence of functional programming"—the 1992 paper that discovered monads and popularized their use in functional programming. Ralf Lämmels lecture and accompanying
code distribution show Wadlers seminal insight: those original scenarios and observations still make sense today. Indeed, Simon Marlow (a Haskell/GHC high priest @ MSR Cambridge) recently noted: "its still the best monad tutorial" (see http://twitter.com/simonmar/status/21397398061
http://twitter.com/simonmar/status/21397398061 ).
Focusing on a few generically useful monads, Dr. Lämmel explains how the work within the interpretation domain. While the lecture also takes a look at the contemporary Haskell library for monads and monad transformers, there are obviously many monads and
associated domains that cannot be covered this time. If you want to learn more about monads, then continue with state threads, IO, parsing, and concurrency (STM).
Slide deck:
http://developers.svn.sourceforge.net/viewvc/developers/repository/ralfs-channel9-lectures/decks/monads.pdf http://developers.svn.sourceforge.net/viewvc/developers/repository/ralfs-channel9-lectures/decks/monads.pdf
Exercises/riddles:
Slide #4 (easy), #6 (modest), #13 (modest), #40 (hard)
Code distribution:
http://developers.svn.sourceforge.net/viewvc/developers/repository/ralfs-channel9-lectures/code/monads/ http://developers.svn.sourceforge.net/viewvc/developers/repository/ralfs-channel9-lectures/code/monads/
Blog post:
http://professor-fish.blogspot.com/2010/09/essence-of-essence-of-functional.html http://professor-fish.blogspot.com/2010/09/essence-of-essence-of-functional.html
View the full article