- 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.
Contents
Types of object language
Formal languages
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.
Computer languages
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.
Formal specification
Main article: Specification languageComputer 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.
Object Code
Main article: Object fileAt 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 typed 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, now it's common for people with little training to drag-and-drop icons to create a Web page; all the steps to create the actual instructions which are run by computers are automatically performed, and not visible.)
One common practice for decades is to allow a programmer to use source language (whose use may still require extensive training), and have that language translated into object code which the computer can immediately use. The compiling of one into the other 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). Object language should also not be confused with object-oriented language, which is a type of computer programming language which changes the programmer's environment into convenient objects which can be used in something similar to a drag-and-drop fashion.
Object language in this context is synonymous with target language. The object language of a translation most often is a machine language, but can be some other kind of language, such as assembly language.
Because the object language of compilation has usually been machine language, the term object file has come to mean a file containing machine instructions, and sometimes the translated program itself is simply called an object.
Expressions in an object language
Symbols
Main article: Symbol (formal)A symbol is an idea, abstraction or concept, tokens of which may be marks or a configuration of marks which form a particular pattern. Although the term "symbol" in common use refers at some times to the idea being symbolized, and at other times to the marks on a piece of paper or chalkboard which are being used to express that idea; in the formal languages studied in mathematics and logic, the term "symbol" refers to the idea, and the marks are considered to be a token instance of the symbol.
Formulas
Main article: Well-formed formulaIn the formal languages used in mathematical logic and computer science, a well-formed formula or simply formula is an idea, abstraction or concept which is expressed using the symbols and formation rules (also called the formal grammar) of a particular formal language. To say that a string of symbols is a wff with respect to a given formal grammar is equivalent to saying that belongs to the language generated by .
Formal systems
Main article: Formal systemA formal system is a formal language together with a deductive system which consists of a set of inference rules and/or axioms. A formal system is used to derive one expression from one or more other expressions previously expressed in the system. These expressions are called axioms, in the case of those previously supposed to be true, or theorems, in the case of those derived. A formal system may be formulated and studied for its intrinsic properties, or it may be intended as a description (i.e. a model) of external phenomena.
Theorems
Main article: TheoremA theorem is a symbol or string of symbols which is derived by using a formal system. The string of symbols is a logical consequence of the axioms and rules of the system.
Formal proofs
Main article: Formal proofA formal proof or derivation is a finite sequence of propositions (called well-formed formulas in the case of a formal language) each of which is an axiom or follows from the preceding sentences in the sequence by a rule of inference. The last sentence in the sequence is a theorem of a formal system. The concept of natural deduction is a generalization of the concept of proof.[1]
Theories
Main article: Theory (mathematical logic)A theory is a set of sentences in a formal language.
References
- ^ The Cambridge Dictionary of Philosophy, deduction
Wikimedia Foundation. 2010.