[rucksack-devel] Fwd: My initial experiences

Helmut G. Enders helmut at cybernetic-systems.de
Mon Oct 13 08:13:40 UTC 2008


szergling wrote:
>
> 
> Hi all,
> .....  and was looking for a
> simple way to switch between persisted vs non-persisted version of the
> application (maybe my data is just left in RAM for normal REPL usage,
> maybe there's a separate development (in RAM) vs release branch
> (persisted)). Regardless of the specific reasons, for general
> modularity alone, I was hoping to be able to trivially flip a switch,
> persistent, flip switch off, and get non-persistent behaviour. I
> wasn't sure how much work would be required to get this behaviour.

> (#<RUCKSACK::PROXY {BECAF61}>)
> 
> The solution is to prefix p- to everything, p-list, p-cons, p-cdr,
> p-length, p-mapcar, etc to use the persistent versions 


To "switch between persisted vs non-persisted version of the
application" implied that you have no problems to hold *all*
data in ram. Then I do not need rucksack, or rucksack is not
much more that cl-store, save-image etc.

E.g. An instance of email-archive with slots like
   - year,
   - list-of-persons
      - with list-of-emails
or an instance of invoices-2007 with list of these where
each holds a list of articles.

It is very important when accessing the
instance email-archive from rucksack, that there is a
<Proxy> in that slot and not a list of 170 TByte of emails.
And there is a loop construct to access the persistant list,
element by element.

If the price for this is p-..., I am pleased to pay. :-)

Helmut










More information about the rucksack-devel mailing list