[Haskell-cafe] How to incrementally update list

Kim-Ee Yeoh ky3 at atamo.com
Wed Nov 28 14:19:14 CET 2012


> I want to incrementally update list lot of times, but don't know how to
do this.

Are you using the right data structure for the job? Maybe you want an array
instead?

-- Kim-Ee


On Wed, Nov 28, 2012 at 6:43 PM, Branimir Maksimovic <bmaxa at 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 at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20121128/4f600d77/attachment.htm>


More information about the Haskell-Cafe mailing list