Dies ist eine alte Version des Dokuments!
Programmieren bedeutet Programme schreiben, Metaprogrammieren bedeutet Programme schreiben zu lassen. Aber nicht von einer anderen Person, sondern von der Sprache, die man selbst zum programmieren benutzt.
In diesem Vortrag will ich genauer erklären, was man unter Metaprogrammierung versteht, warum man sowas tut, und vor allem: wie man es tut. Im besonderen werde ich dabei auf C++ eingehen, weil C++ eines der am besten erforschten Templatesysteme hat. Templatesysteme in anderen Sprachen funktionieren meist ähnlich.
Nicht betrachtet werden hier Textersetzungssysteme wie der C-Präprozessor, auch wenn diese genau so mächtig sind wie die Templatesysteme, um die es hier eigentlich geht.