Algebraic translations, correctness and algebraic compiler construction
Algebraic translation methods are argued for in many fields of science. Several examples will be considered: from the field of compiler construction, database updates, concurrent programming languages, logic, natural language translation, and natural language semantics. Special attention will be given to the notion 'correctness of translation'. Ln all fields this notion can be defined as the commutativity of some diagram which connects languages, translation and meanings. For algebraically defined compilers, five different definitions are found in the literature. We argue which of these should be considered the 'right' one (it is not the standard choice). We conclude with a first step towards a general algebraic theory of translation. (C) 1998-Elsevier Science B.V. All rights reserved.
translation correctness compiler natural language embedding view update parsing commutative diagram