I think the syntax looks good, but as per a thread in python-list, you cannot discover the order of class variables by any solution (metaclass or otherwise), due to the fact that they become part of the class dictionary; which is arbitrarily unordered.
If ordering is important to a user, one could have an optional __order__ attribute that gives the list of items in-order.
That's not quite true. TypedAttribute instances and iniSection's __new__ could have serial numbers.
I'm not saying that they can't be numbered, I'm saying that one cannot discover the ordering of assignment of attr1 and attr2 in the following:
class foo: attr1 = value1 attr2 = value2
If there is a mechanism for discovering the original ordering of those assignments, there are a group of users in c.l.py who would like to know, and Carlos' seemingly non-existant implementation could also use it.
Please advise, - Josiah