A meta-language is one in which it is possible to represent the properties of another language. A first-order meta-language is a first-order logic, with the standard predicates, quantifiers, terms, and so on, whose domain contains formulae of some other language, called the object language. Using a meta-language, it is possible to represent a relationship between a meta-language term denoting an agent, and an object language term denoting some formula. For example, the meta-language formula might be used to represent the example (1) that we saw earlier. The quote marks, , are used to indicate that their contents are a meta-language term denoting the corresponding object-language formula.
Unfortunately, meta-language formalisms have their own package of problems, not the least of which is that they tend to fall prey to inconsistency [Thomason, 1980][Montague, 1963]. However, there have been some fairly successful meta-language formalisms, including those by Konolige [Konolige, 1982], Haas [Haas, 1986], Morgenstern [Morgenstern, 1987], and Davies [Davies, 1993]. Some results on retrieving consistency appeared in the late 1980s [Turner, 1990][des Rivieres and Levesque, 1986][Perlis, 1988][Perlis, 1985].