Loops/While: Difference between revisions
Content added Content deleted
(HolyC) |
|||
Line 841: | Line 841: | ||
print n |
print n |
||
modifyIORef r (`div` 2))</lang> |
modifyIORef r (`div` 2))</lang> |
||
With MonadComprehensions extension you can write it a little bit more readable: |
|||
<lang haskell>{-# LANGUAGE MonadComprehensions #-} |
|||
import Data.IORef |
|||
main :: IO () |
|||
main = do |
|||
r <- newIORef 1024 |
|||
whileM [n > 0 | n <- readIORef r] $ do |
|||
n <- readIORef r |
|||
print n |
|||
modifyIORef r (`div` 2)</lang> |
|||
=={{header|HolyC}}== |
=={{header|HolyC}}== |