Unifying parsing and pretty-printing, the monadic way!