[rucksack-devel] Re: Rucksack, ECLM
Nikodemus Siivola
nikodemus at random-state.net
Thu May 18 09:10:39 UTC 2006
"Arthur Lemmens" <alemmens at xs4all.nl> writes:
>> Rucksacks A and B open.
>> Persistent Class FOO is defined.
>> Instances of FOO are stored in Rucksack A.
>> Other instances of FOO are stored in Rucksack B.
>> Rucksack A closes.
>> FOO is redefined, schema in B updates.
>> Rucksack B closes.
>> Lisp exists.
>>
>> New lisp sesssion.
>>
>> Rucksack A is opened and instances of FOO are fetched.
>> Rucksack B is opened and instances of FOO are fetched.
> I think the basic guideline should be that rucksacks never need to know
> about each other. And another assumption is that the most recent class
> definition comes from your program source, not from a rucksack. The
> schemas in a rucksack are just a way to make sure that Rucksack can adapt
> old instances to the current class definition in your program.
Right. What it there is no definition for class FOO in the new session?
A LOAD-YOUR-STUFF-RIGHT-NOW-ERROR is signalled, I assume.
> So when a rucksack is opened and fetches an instance of FOO for the first
> time, Rucksack should probably do the same thing as when a class is
> redefined: compare the current class definition with the most recent
Makes sense.
> Does that sound reasonable, or am I missing something?
I can't think of anything offhand. ;-)
The only point remaining is objects whose Rucksack has been closed: I
assume they are effectively dead, and touching them isn't allowed?
> I hope I've shown that this prohibition is not necessary.
Yes.
I'll do a short writeup on the desired semantics (based on this
discussion) -- both so that I have chance to think this through again,
and so that we can see if what I have understood is what you have
ment.
Cheers,
-- Nikodemus Schemer: "Buddha is small, clean, and serious."
Lispnik: "Buddha is big, has hairy armpits, and laughs."
More information about the rucksack-devel
mailing list