streching storage manager

Marcin 'Qrczak' Kowalczyk
28 Sep 2001 11:50:51 GMT

Fri, 28 Sep 2001 20:28:29 +0900, Dylan Thurston <> pisze:

> This sounds perfectly suited to Haskell's standard lazy lists.  If you
> only keep a pointer to the beginning of the data you need to work on,
> then Haskell will automatically read in exactly as much data as you
> use and GC it away after you are done with it.  The downside is that
> accessing elements within the window will take time O(window size).

Perhaps window contents should be grouped in compact arrays (ghc
provides some non-standard array variants more compact than Array).
So in overall it's a list of arrays, with elements accessed as with
something like l !! (i `div` blockSize) ! (i `mod` blockSize).

 __("<  Marcin Kowalczyk *
  ^^                      SYGNATURA ZASTĘPCZA