Thanks everyone for your replies. The language is Cache Object Script, a language used in Intersystems Relational Dbase.
I think egbert's answer provides the simplest answer. It allows our python interface to Cache to be almost identical to Cache Object Script, with simeply the addition of (), which we prefer to .val or .data for various reasons. Using the example .type was a mistake, as I meant simply any metadata about a value. If we make the instance callable, then we can have: instance() instance.calculated instance.type instance.whatever instance.save() etc thanks. -- http://mail.python.org/mailman/listinfo/python-list