TCO + strictnesses annotations should take care of your problem. On 28 Nov 2012 11:44, "Branimir Maksimovic" <bm...@hotmail.com> wrote:
> Problem is following short program: > list = [1,2,3,4,5] > > advance l = map (\x -> x+1) l > > run 0 s = s > run n s = run (n-1) $ advance s > > main = do > let s = run 50000000 list > putStrLn $ show s > > I want to incrementally update list lot of times, but don't know > how to do this. > Since Haskell does not have loops I have to use recursion, > but problem is that recursive calls keep previous/state parameter > leading to excessive stack.and memory usage. > I don't know how to tell Haskell not to keep previous > state rather to release so memory consumption becomes > managable. > > Is there some solution to this problem as I think it is rather > common? > > > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe > >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe