streching storage manager

Marcin 'Qrczak' Kowalczyk qrczak@knm.org.pl
28 Sep 2001 11:50:51 GMT


Fri, 28 Sep 2001 20:28:29 +0900, Dylan Thurston <dpt@math.harvard.edu> 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 * qrczak@knm.org.pl http://qrczak.ids.net.pl/
 \__/
  ^^                      SYGNATURA ZASTĘPCZA
QRCZAK