vikrant.patil:
> 
>    Hi,
>        I am writing a recursive function which does some IO
>    operation. I encounter situation in which my function has to
>    end recursion by doing "nothing" and otherwise keep calling
>    same function with some different parameters. I did not find
>    anything equivalent to "pass" or "return" statement in
>    Haskell. Presently I have got a workaround. I am doing it by
>    putting a dummy print as described below.
>    can anybody help me in this?
>    e.g
>    f some_params =
>           if some_condition
>              then do putStr "Hacky way to do nothing!"
>              else do perform_some_IO
>                           f some_other_params


Two usual ways:

import Control.Monad

f xs | condition = return ()
     | otherwise = do io
                      f ys

f xs = when (not.condition) $ do
    io
    f ys
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to