Wed Aug 5 21:58:13 EDT 2015

It's the outputs.

A sig is a value inside a monad.  That's really all.

Sig m a, where  m' = Sig m

a -> Sig m a

I tried this before.  So what is bind?

I keep going back to flattening lists.  That doesn't work.  Can't
flatten infinite lists..

There is another way to make a list into a monad, right?

But there is a stream instance:

It takes the "main diagonal".