An object language is a language which is the "object" of study in various fields including logic, linguistics, mathematics, and theoretical computer science. The language being used to talk about an object language is called a metalanguage. An object language may be a formal or natural language.
Mathematical logic and linguistics make use of metalanguages, which are languages for describing the nature of other languages. In mathematical logic, the object language is usually a formal language. The language which a metalanguage is used to describe is the object language. It is called that because that language is the object under discussion using the metalanguage.
For instance, someone who says "In French, you say Bonjour to greet someone" uses English as a metalanguage to describe the object language French.
There are two ways the term object language can be used in computing: a language which is the object of formal specification, and a language which is the object (goal) of a compiler or interpreter.
Computer languages are object languages of the metalanguage in which their specification is written. In computer science this is referred to as the specification language. Backus–Naur form was one of the earliest used specification languages.
When compilers are written using systems like lex and yacc, the rules the programmer writes look much like a formal specification, but it is considered an implementation instead. Many programming language implementations are not strictly the same as their specifications, adding features or making implementation-dependent design decisions.