>So what you are saying is that I actually don't need >Monads to perform the tasks Monads supports ? Indeed. However, not using the Monadic do syntax results in hardly-readible code. For an explanation of how monads can be written in a functional way, see http://www.engr.mun.ca/~theo/Misc/haskell_and_monads.htm