Operations of the Primitive Computing Machine
Operations of the Primitive Computing Machine
A program is a sequence of symbols, strings, or instructions. The process of creating this sequence of
instructions based on a language is called programming or coding. The programming language is a
formalism or an abstraction mechanism that functions as a set of rules for constructing language
components (identifiers, operators, attributes, etc) and the structural representations of their logical
relationships in such a way that satisfy a well-defined set of constraints. This structure of language
components and their logical relationships form a logical or mathematical model or specification that can
be interpreted for activating a subset of computational circuits or processor subsystems. That’s is, a set of
computations is performed by processor circuits according to the specifications given in the model. The
programming language is therefore organized as ordered configuration of language components and the
structural representations of their logical relationships due to the following reasons:
1. Computational goal: The need to ensure that the right computations are executed for the right
instruction.
2. Instruction preservation: During language translation, the programming language is implemented
across several layers of abstraction. There is a need to ensure that as the implementation of the
language is implemented across the layers of abstractions, the instruction is preserved. That is the
construction before translation is the same instruction after translation.
3. Code equivalence: The human-readable code before translation should be equivalent to the binary
machine code after translation. Two programs are equivalent if they always produce the same
output when given the same input.
4. Design constraints: there are different ways for specifying or modelling a programming language.
Organization of the specification or model aids thorough analysis, understanding and the ability to
describe the specification in more consistent ways. Equipped with an effective knowledge of the
specification, more efficient programming languages that can be translated faster with less
computational resources can be designed.
5. Performance constraints: the implementation of a programming language specification can
significantly affect the efficiency of an algorithm and, consequently, the performance of programs
built from it. The organization of the programming language can aid understanding strengths,
characteristics and limitations of existing specifications. This knowledge can be used for fine tuning
existing specifications such that they can meet scalability, reliability, and functionality of the
systems being developed