V
Reflection and Metaprogramming
We have seen styles that use functions, procedures and objects; we have also seen functions and objects being passed around and stored in variables, as regular data values. However, these programs are blind tools: we see them, and they interact with us via input/output, but they don't see themselves. This part of the book contains a few styles related to the use of computational reflection and metaprogramming. Reflection is about programs being somehow aware of themselves. Metaprogramming is programming that involves the program accessing, and even changing, itself as it executes. Besides its geeky appeal, metaprogramming can be very useful for engineering software systems that evolve over time.
Reflection falls ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access