Re: [boost] [filesystem][program_options][serialization][test]fromcomp.lang.c++.moderated

David Abrahams wrote:
"Le Chaud Lapin" <unoriginal_usern...@yahoo.com> writes: More than anything in programming, I depend on type to create form. Versioning implies that types are semi-weak.
If versioning in serialized form implies that, then so do revisions of
your type in a version control system. So, basically, once you design
a class, it never evolves?
Along the lines of what Lapin is thinking, I think B.Ser's "versioning" support is problematic. For example, consider wanting to move (or delete) a data member out of a type between versions 1.1 and 1.2. B.Ser needs that member to remain in the type in order to support 1.1. To answer the question: I make changes to types over time, but this sort of a change is thwarted by the B.Ser approach. An idea of how to better structure a component can't be implemented in a direct way because the approach taken by the library isn't able to cope with the fluidity of software development. If a server (version) has to support multiple versions of a type at the same time, conditional compilation wouldn't be helpful either. If members are simply being added to a type between version 1.1 and 1.2, there remains this blurring of types. Brian www.webEbenezer.net

bwood <brass@mailvault.com> writes:
David Abrahams wrote:
"Le Chaud Lapin" <unoriginal_usern...@yahoo.com> writes: More than anything in programming, I depend on type to create form. Versioning implies that types are semi-weak.
If versioning in serialized form implies that, then so do revisions of
your type in a version control system. So, basically, once you design
a class, it never evolves?
Along the lines of what Lapin is thinking, I think B.Ser's "versioning" support is problematic. For example, consider wanting to move (or delete) a data member out of a type between versions 1.1 and 1.2. B.Ser needs that member to remain in the type in order to support 1.1.
No, you just read it and throw it away. if (version == 11) { type_of_deleted_member ignored; ar & ignored; } -- Dave Abrahams Boost Consulting www.boost-consulting.com
participants (2)
-
bwood
-
David Abrahams