Maurício wrote: > Also, using layout, > > do > a <- x > let b = a > y b > z > > expands to > > do {a <- x ; let {b = a} in do {y b >> z}} > I'm curious as to where the second `do' came from? > and then to > > x >>= \a -> let {b=a} in y b >> z >