Meta-programming
<p>I have just started my journey as a C++ developer, and I have recently been researching a topic called meta-programming. So far, I have gone through a lot of information on the topic, and have few questions.</p>

<ol>
<li><p>Usage of Reflection in c++: Is it possible? As per my understanding reflection is a meta-programming technique which has the ability to manipulate a state of a program, and its manipulation can be introspection or introcession.</p></li>
<li><p>What is the difference between reflective architecture and meta-level architecture? In which category does meta-programming architecture fall in?</p></li>
<li><p>Meta-programming comes in two levels: meta level and base level. In my understanding, the object program or the system under investigation is the base level, and the meta program that is going to operate over the system under investigation is the meta level. Am I correct?</p></li>
</ol>

<p>Also help me by providing some guidelines about working on template metaprogramming in C++.<br>
May you suggest me some workable examples I can look for to get hands-on in this programming technique?</p>
