language-icon Old Web
English
Sign In

Object language

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. 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. At their basic level, computers act on what is given to them through a limited set of instructions which are understood by their CPUs. In the earliest computers, that meant programmers sometimes composed actual 1's and 0's to program. Since this requires considerable programmer training (and patience) to create instructions, later computer languages have gone to great lengths to simplify the programmer's task. For example, a high level programming language may allow a programmer to assign a value to a variable without specifying a memory location or a CPU instruction. In this context, the high level programming language is the source language, which is then translated by a compiler into object code that the CPU can read directly. This object code is the object language, and varies depending on what CPU is being given the instructions. Object language in this context means something akin to 'the object of what the programmer is trying to achieve'. If the source language and object languages are viewed as formal (logical) languages, what the compiler does is interpret the source into the target language (this is different from the computer science use of interpreted language meaning one which is not compiled).

[ "Universal Networking Language", "Natural language", "Language identification in the limit" ]
Parent Topic
Child Topic
    No Parent Topic