RosettaCodeData/Task/First-class-environments/Haskell/first-class-environments-5.hs

6 lines
164 B
Haskell

process = execState $ do
n <- gets value
c <- gets count
when (n > 1) $ modify $ \env -> env { count = c + 1 }
modify $ \env -> env { value = hailstone n }