The Meta-programming Language is a programming language designed for meta-programming. Meta-programming is a method for developing computer programs. It works by generating source code in a target language from a program specification in a higher level language. Source code written in MetaL is based on XML, the compiler engine can be used to generate the same program in potentially any target language. Currently supported target languages are PHP, Java and Perl. The support for other languages can be added any time.