OT: on IDEs and code writing on steroids

grauzone none at example.net
Sun May 17 22:15:10 PDT 2009


So what would you suggest to make the things you mentioned work? That was:
1. templated virtual functions
2. finding all derived classes (from other source files)

The problem is that D wants to support dynamic linking on the module 
level, more or less.

I still wonder how serialization is supposed to work. Yeah, we can get 
all information at compile time using __traits. But right now, we had to 
register all classes manually using a template function, like "void 
registerForSerialization(ClassType)();". What you'd actually need is to 
iterate over all classes in your project. So this _needs_ a solution.

My best bet would be to allow some kind of "module preprocessor": some 
templated piece of code is called each time a module is compiled. 
Something like "dmd a.d b.d c.d -preprocessor serialize.d". serialize.d 
would be able to iterate over the members of each module (a, b, c) at 
compiletime.

(We also could need some C# like attributes to mark transient class 
members and the like.)



More information about the Digitalmars-d mailing list