I've noted that in some languages, clojure for example, you can assign meta-data to objects.
In Python, you can also do something like this.
class meta_dict(dict):pass
a={'name': "Bill", 'age':35}
meta_a = meta_dict(a)
meta_a.secret_meta_data='42'
meta_a==a
True
secret_meta_data_dict=meta_a.__dict__
original_dict=dict(meta_a)
I was wondering if this a reasonable pattern to follow when you need to have data in a particular form but want some other data to follow along gracefully.