module HSP.CGI.NumberGen ( mkNumberGen ) where import HSP.Env.NumberGen import Data.IORef mkNumberGen :: IO NumberGen mkNumberGen = do ref <- newIORef 0 let inc x = (x+1, x) gen = atomicModifyIORef ref inc return $ NumberGen gen