2. Motivation

2.6. Meta-Meta-Programming

  • If a meta-programming language can be used to generate programs in any target language, it may as well be used to generate programs in the meta-language itself.

  • This means that there may be very high level commands in a meta-language that can be interpreted to generate source code with only lower level meta-language commands.

  • Translation of higher level commands in lower level ones may be done in one or more compiler passes. In a final pass, the meta-programming compiler generates code in a given target language.

  • The method of developing programs with meta-language commands that are translated into lower level commands is called Meta-Meta-Programming or just Meta-N-Programming.

  • Very high level domain specific languages can be developed with more flexibility with Meta-Meta-Programming. ||