On 8/19/06, <b class="gmail_sendername">Ron Adam</b> <<a href="mailto:rrr@ronadam.com">rrr@ronadam.com</a>> wrote:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>The callmeta decorator wouldn't provide any extra information itself,<br>all it does is decorate(wrap) the functions so that the meta data gets<br>called. It activates the meta data calls.</blockquote><div><br>I think we're using the word "metadata" differently. In my universe, metadata is a form of data and you don't "call" data. You just assert it. I think that what you are trying to do is USE metadata as a form of runtime precondition. That's totally fine as long as we are clear that there are many uses for metadata that do not require anything to "happen" during the function's instantiation. A documentation annotation or annotation to map to a foreign type system are examples. So the decorator is allowed but optional. Given that that's the case, I guess I don't understand the virtue of bringing decorators into the picture. Yes, they are one consumer of metadata. Module-scoped functions are another. Application scoped functions are another. Third party data extraction programs are another. Decorators working with metadata are just special cases of runtime processors of it.
<br><br> Paul Prescod<br><br></div></div>