| ▲ | doyougnu 7 hours ago | ||||||||||||||||||||||
Agreed. the Haskeller in me screams "You've just implemented the IO monad without language support". | |||||||||||||||||||||||
| ▲ | AndyKelley 5 hours ago | parent [-] | ||||||||||||||||||||||
It's not a monad because it doesn't return a description of how to carry out I/O that is performed by a separate system; it does the I/O inside the function before returning. That's a regular old interface, not a monad. | |||||||||||||||||||||||
| |||||||||||||||||||||||