On Tue, Jan 03, 2006 at 05:49:07PM +0000, Neil Mitchell wrote: > All Haskell functions are lazy, hence there is no need to "write a > lazy version" of your print_list function. I think the function you > probably want is: > > putStr (unlines xs) > > This uses the bulid in unlines function, which is similar in spirit to > join (you get more quotes, which I guess you don't want) > > The equivalent in monad'y programming is: > > mapM putStrLn xs > > The first one has fewer monads, so I prefer it, but take your pick :)
Nitpicking a bit to prevent possible confusion: a monad is a *type constructor*, not an expression. In both variants above you are dealing with two monads - IO and [] - however, the Monad instance for [] is not used. Best regards Tomasz -- I am searching for programmers who are good at least in (Haskell || ML) && (Linux || FreeBSD || math) for work in Warsaw, Poland _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
