Interesting Esoterica

Understanding Monads With JavaScript

Web page by IonuČ› G. Stan
  • Published in 2011
  • Added on
In the collection
For the past weeks I've been working hard studying monads. I'm still learning Haskell, and to be honest I thought I knew what monads are all about, but when I wanted to write a little Haskell library, just to sharpen up my skills, I realized that while I understood the way monadic bind (>>=) and return work, I had no understanding of where that state comes from. So, most likely I had no understanding at all. As a result of this I thought I rediscover monads myself using JavaScript. The plan was basically the same as that used when I derived the Y Combinator: start from the initial problem (dealing with explicit immutable state in this case), and work my way up to the solution by applying simple code transformations.

Links

Other information

key
item10
type
online
date_added
2012-01-18
date_published
2011-10-09

BibTeX entry

@online{item10,
	key = {item10},
	type = {online},
	title = {Understanding Monads With JavaScript},
	author = {IonuČ› G. Stan},
	abstract = {For the past weeks I've been working hard studying monads. I'm still learning Haskell, and to be honest I thought I knew what monads are all about, but when I wanted to write a little Haskell library, just to sharpen up my skills, I realized that while I understood the way monadic bind (>>=) and return work, I had no understanding of where that state comes from. So, most likely I had no understanding at all. As a result of this I thought I rediscover monads myself using JavaScript. The plan was basically the same as that used when I derived the Y Combinator: start from the initial problem (dealing with explicit immutable state in this case), and work my way up to the solution by applying simple code transformations.},
	comment = {},
	date_added = {2012-01-18},
	date_published = {2011-10-09},
	urls = {http://igstan.ro/posts/2011-05-02-understanding-monads-with-javascript.html},
	collections = {Basically computer science},
	url = {http://igstan.ro/posts/2011-05-02-understanding-monads-with-javascript.html},
	urldate = {2012-01-18},
	year = 2011
}