Hi --

On Mon, 9 Jan 2006, Gregory Brown wrote:

> How does this sound for a definition:
>
> "When code is designed to dynamically write or modify it's own code or

s/'// :-)

> other code, this is considered to be Meta-programming.  This often
> makes heavy use of reflection and introspection, two key tools for
> dynamic manipulation of code."

I'm not sure I'd say that reflection and introspection (and by the
way, is there an established difference between those two terms?) are
"manipulation" techniques.  In fact, they're sort of non-manipulation
techniques; they give you information about what's going on, without
actually changing anything.

(I'm still chickening out of trying to define metaprogramming myself
:-)


David

-- 
David A. Black
dblack / wobblini.net

"Ruby for Rails", from Manning Publications, coming April 2006!
http://www.manning.com/books/black