La théorie des langages informatiques s'attache à donner un sens à des entités communément appelées ``objets'', décrits à l'aide de textes appelés ``programmes''. La plupart des langages déduisent le sens d'un objet de la structure explicite du programme le décrivant, considérée dans un contexte absolu et immuable.
Cependant, pour tout langage, ce processus est effectué lui-même par un programme (interpréteur, compilateur, etc), appelé ``métaprogramme'', ayant lui-même sa propre structure, descriptible dans un ``méta''-langage, pour lequel le langage précédent devient un ``méta''-objet.
Dans la pratique, il n'y a pas de régression infinie des métaobjets, car le calcul est finalement exécuté par des machines physiques, régies par les lois de la physique, au-delà desquelles il est vain de s'aventurer.
Pourtant, une catégorie de langages, dits ``réflexifs'', permet d'explorer aussi profondément que l'on veut cette ``tour'' de méta-langages, par l'introduction dynamique de nouveaux niveaux ``méta'', dans le but d'adapter les programmes aux divers contextes dans lesquels ils sont utilisés sans avoir à les réécrire à chaque fois.
La gageure est alors de pouvoir exprimer le sens d'un objet par des métaobjets élémentaires que l'on combinerait; mais la mise au point d'une méthode cohérente et simple pour combiner des métaobjets reste encore à trouver. Les trois articles qui sont donnés à étudier visent justement cet objectif.
Dans le premier article, ``Metaclass Compatibility'' [Gra89], Nicolas Graube discute du problème du point de vue des langages à classes et héritage, où il essaie alors d'établir des règles de compatibilité entre les classes des classes des objets, leurs ``métaclasses'', pour assurer la consistence d'un mécanisme d'héritage s'étendant aux métaclasses.
Le deuxième article, ``Towards a Methodology for Explicit Composition of MetaObjects'' [MMC95] de Philippe Mulet, Jacques Malenfant, et Pierre Cointe, expose un méthodologie pour composer des métaobjets dans un langage réflexif avec un protocole à métaobjets.
Le troisième et dernier article, ``Incremental Redefinition of Open Implementations'' [Mez96], de Mira Mezini, propose un modèle pour accomplier une redéfinition incrémentale des objets dans les langages à implémentation ouverte.