I would think D's type system would be capable enough where a serialization library can tell whether a type can be serialized or not.
Sometimes you don't want to serialize a field, regardless if the serialization library can serialize it or not. This will require a manual annotation.
I also think it would be a tremendous burden to put @serialized on every type that could be serialized. When I used C#'s serializer, it was definitely annoying to have to annotate every type I wanted to serialize, and every type that was used within that type. What is the concern with an opt-out approach? I would think the default would be the most common option -- save everything.
I agree. -- /Jacob Carlborg
