
Hello Neil, Friday, April 28, 2006, 7:59:22 PM, you wrote:
I have a program which needs to cache intermediate data structures to a file (finite, non-cyclic, relatively simple, around ~100Kb when shown). Is there any easy way to acheive this?
use NewBinary (darcs get http://www.n-heptane.com/nhlab/repos/NewBinary/) or jhc's Binary module together with DrIFT to generate Binary instances. these modules need minimal tweaks to implement Hugs compatibility code generated by DrIFT will use strict get. if you want to get lazy reading, you can replace get/put_ with lazyGet/lazyPut in appropriate instances in order to make it run faster, you should work with memory buffer and read/write entire buffer from/to file: writing: bh <- openBinMem 1 undefined lazyPut bh data ... put more data writeBinMem bh "filename" reading: bh <- readBinMem "filename" data <- lazyGet bh .... get more data -- Best regards, Bulat mailto:Bulat.Ziganshin@gmail.com