From: Alessio S. <ale...@gm...> - 2009-03-04 21:56:28
|
Progress report #4: I give up. Serializing ABCL state is too much a big task for me given the time at my disposal. My results so far have been interesting - a vast number of objects appear to be serializable, including many symbols, functions (compiled or not), packages, conses, numbers, strings, etc. - but there are still many unresolved (worse, unclear) problems. For example, some symbols' plists contain information that is not serializable, or that cannot be deserialized; the symbol '+ contains data about the + method combination; some functions refer to unknown compiler-related stuff, etc. In general, state is very entangled, so saving even a tiny bit will include unexpected objects (e.g. functions seem to point back to their name, which is a symbol, which refers to a value, etc. etc.) Individually sorting out these issues is certainly doable, but the fact they show up unpredictably makes me fear that the whole task - being able to reliably save and restore a big enough subset of state - is hard to get right. Hopefully, I'll give it another shot when I'll have some more spare time to dedicate to it. In the meantime, if anyone is interested in going forward my same path and experimenting with serialization, I can provide a patch that includes my work so far, plus a little program (Lisp + Java) to try it out interactively. Cheers, Alessio |