Computational reflection
Computational reflection is a programming paradigm in which a program can analyze and modify itself. It is closely related to metaprogramming, in that it allows programs to be written that can introspect and modify themselves at runtime. One of the key features of computational reflection is that it allows programs to treat themselves as data. … Read more