<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
<META NAME="GENERATOR" CONTENT="GtkHTML/3.3.2">
</HEAD>
<BODY>
The best way to answer this question would be to look at, or write some new, tests.<BR>
<BR>
I evolve classes all the time, and have never noticed a problem, at least if you add<BR>
a slot that is not required at object construction time. Obviously, it is possible to add<BR>
a slot in fact needed for the object to be wholesome, and elephant can't make something<BR>
up in such a case.<BR>
<BR>
In one case I think I actually wrote a little code to:<BR>
<BR>
(map-btree #'(create-and-store a new object of class X) (all-objects of class Y))<BR>
<BR>
That will always work if you have a class evolution that you just can't get around<BR>
any other way; that is the basic strategy behind inter-store migration.<BR>
<BR>
So I agree with Ben: it basically works, probably has glitches if you do something<BR>
complicated, but there is, by writing enough (relatively simple) code, always a way out.<BR>
<BR>
<BR>
<BR>
On Thu, 2005-12-29 at 11:52 -0600, Ben wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
<FONT COLOR="#000000">it should be relatively class friendly. it should even support fancy</FONT>
<FONT COLOR="#000000">stuff like change-class. there's talk about this in the documentation</FONT>
<FONT COLOR="#000000">somewhere...</FONT>
<FONT COLOR="#000000">B</FONT>
<FONT COLOR="#000000">On 12/29/05, Waldo Rubinstein <<A HREF="mailto:waldo@trianet.net">waldo@trianet.net</A>> wrote:</FONT>
<FONT COLOR="#000000">> Is Elephant friendly with class evolution? For example, if I create a</FONT>
<FONT COLOR="#000000">> CLOS object with, say 5 fields, and store some instances in an</FONT>
<FONT COLOR="#000000">> elephant DB and then the CLOS definition of the class changes to add</FONT>
<FONT COLOR="#000000">> a sixth field. What will happen to the existing five objects when</FONT>
<FONT COLOR="#000000">> retrieved? Will new objects be stored with the new field definition?</FONT>
<FONT COLOR="#000000">></FONT>
<FONT COLOR="#000000">> Thanks,</FONT>
<FONT COLOR="#000000">> Waldo</FONT>
<FONT COLOR="#000000">></FONT>
<FONT COLOR="#000000">> _______________________________________________</FONT>
<FONT COLOR="#000000">> elephant-devel site list</FONT>
<FONT COLOR="#000000">> <A HREF="mailto:elephant-devel@common-lisp.net">elephant-devel@common-lisp.net</A></FONT>
<FONT COLOR="#000000">> <A HREF="http://common-lisp.net/mailman/listinfo/elephant-devel">http://common-lisp.net/mailman/listinfo/elephant-devel</A></FONT>
<FONT COLOR="#000000">></FONT>
<FONT COLOR="#000000">_______________________________________________</FONT>
<FONT COLOR="#000000">elephant-devel site list</FONT>
<FONT COLOR="#000000"><A HREF="mailto:elephant-devel@common-lisp.net">elephant-devel@common-lisp.net</A></FONT>
<FONT COLOR="#000000"><A HREF="http://common-lisp.net/mailman/listinfo/elephant-devel">http://common-lisp.net/mailman/listinfo/elephant-devel</A></FONT>
</PRE>
</BLOCKQUOTE>
</BODY>
</HTML>