GHCI :reload module without erasing previous data

I have a module that loads several dozen megabytes of static data into memory. This module is working properly. I have another module that I'm developing to analyze that data. As I make iterations on the analysis module, I would like it if the data loaded by the data module could stay in memory. In GHCI, every time I reload a module, it clears whatever data I have set with the "let" command. Is there a way to persist that data across calls to :reload, or is there an altogether different workflow I should be using for this?

On 09/11/2009 18:28, Michael Serdar wrote:
I have a module that loads several dozen megabytes of static data into memory. This module is working properly. I have another module that I'm developing to analyze that data. As I make iterations on the analysis module, I would like it if the data loaded by the data module could stay in memory.
In GHCI, every time I reload a module, it clears whatever data I have set with the "let" command. Is there a way to persist that data across calls to :reload, or is there an altogether different workflow I should be using for this?
GHCi always discards the current bindings when you :reload. The way to make them persistent is to put them in a module and :load it. Top-level bindings in interpreted modules will not be reverted, as long as the module itself is not recompiled, or depends (indirectly) on a module that has been recompiled. Cheers, Simon
participants (2)
-
Michael Serdar
-
Simon Marlow