one other thing you might find useful is to read it imperatively and then use unsafeFreezeArray (i think that's the name) to get a pure array out of it. since all you'll be doing is reading, this should work nicely for you.
On Wed, 24 Dec 2003, andrew cooke wrote: > > Thanks. I should have added that I will only use the array for reading > once it's created. I don't mind whether creating is lazy or eager (it's > currently eager because I was fighting a space leak, but I think that was > down to some other error). > > I don't fully understand how either of the suggestions you make will speed > up creation, though (I guess allocating less memory is faster). I'm > looking for a factor of tens of thousands improvement. But I will try > what you suggest. > > Cheers, > Andrew > > PS Thanks for the very speedy reply and thanks to whoever maintains the > list archive for updating the archive for each message (I'm pretty sure it > used to be made daily, which was a nuisance if you wanted to forward URLs > to interesting discussions). > > Hal Daume III said: > > (1) use unboxed arrays, otherwise you're wasting too much space with > > pointers. that is, unless you need laziness on the elements, which i > > don't think you do based on your list > > > > (2) (maybe) use imperative arrays; this will help you ensure that > > everything is being evaluated quickly. > > -- Hal Daume III | [EMAIL PROTECTED] "Arrest this man, he talks in maths." | www.isi.edu/~hdaume _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell