|
Boost : |
From: Augustus Saunders (infinite_8_monkey_at_[hidden])
Date: 2002-12-13 20:01:58
I think that the points below can have multiple solutions, and that
the points are orthogonal. Different formats should be able to mix
and match desired solutions. Keep in mind that some formats might
completely exclude some of these problems. I have brief repsonses
below, and yes, it seems we mostly agree :)
Dave Harris wrote:
>> What should a serialization library provide that iostreams
doesn't?
>
>(1) Archiving of polymorphic pointers. Loading the archive needs to
>create objects of the dynamic type rather than the static type. (I
>don't believe we have a good solution to this yet?)
I still haven't closely examined Robert's solution, but I recall
there was a (heated) discussion. I see that you might implement it
very differently depending on the meta-data stored.
>(2) Archiving of shared objects. If two pointers point to the same
>object on saving, they should still point to the same object on
>loading.
Presuming the deserializing application is written in a language that
supports aliases. A minor point, but this kind of point caused our
serialization vs persistance discussion--serialization is allowed to
be lossy and not support some language features. Persistance would
guarantee this in all cases, whereas it would depend on the format
when serializing.
>(3) A canonical scheme for managing versioning.
We talked about this in other emails :)
>(4) Space efficiency. Eg metadata such as version information should
>be stored once per class rather than once per object.
I want to provide a service for gathering meta-data, but let formats
store it however they please.
>(5) Support for a variety of formats, with different trade-offs.
>Including (a) efficient formats; (b) human-readable formats; (c)
>platform independent formats; (d) standard formats such as XML. I
want
>to be able to switch between formats without changing the code in my
>user-defined types.
I can't tell if you want third parties to create formats, or if you
want a serialization library to provide them. It's my intent to let
other people write formats (except for a few examples).
Overall, I guess I'm looking for a loosely bound set of services to
ease the burdon on a format writer.
Cheers-
Augustus
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk