Short Code was one of the first higher-level languages developed for an
electronic computer. Unlike
machine code, Short Code statements represented mathematic expressions rather than a machine instruction. Also known as automatic programming, the source code was not compiled but executed through an interpreter to simplify the programming process. The execution time was, naturally, much slower.
History
Short Code was proposed by
John Mauchly
John William Mauchly ( ; August 30, 1907 – January 8, 1980) was an American physicist who, along with J. Presper Eckert, designed ENIAC, the first general-purpose electronic digital computer, as well as EDVAC, BINAC and UNIVAC I, the f ...
in 1949 and originally known as Brief Code. William Schmitt implemented a version of Brief Code in 1949 for the
BINAC
BINAC (Binary Automatic Computer) is an early electronic computer that was designed for Northrop Corporation, Northrop Aircraft Company by the Eckert–Mauchly Computer Corporation (EMCC) in 1949. J. Presper Eckert, Eckert and Mauchly had started ...
computer, though it was never debugged and tested. The following year Schmitt implemented a new version of Brief Code for the
UNIVAC I, where it was now known as Short Code (also Short Order Code). A revised version of Short Code was developed in 1952 for the Univac II by A. B. Tonik and J. R. Logan.
While Short Code represented expressions, the representation itself was not direct and required a process of manual conversion. Elements of an expression were represented by two-character codes and then divided into 6-code groups in order to conform to the 12-byte words used by BINAC and Univac computers. For example, the expression
a = (b + c) / b * c
was converted to Short Code by a sequence of substitutions and a final regrouping:
X3 = ( X1 + Y1 ) / X1 * Y1 substitute variables
X3 03 09 X1 07 Y1 02 04 X1 Y1 substitute operators and parentheses.
Note that multiplication is
represented by juxtaposition.
07Y10204X1Y1 group into 12-byte words.
0000X30309X1
Along with basic
arithmetic
Arithmetic is an elementary branch of mathematics that deals with numerical operations like addition, subtraction, multiplication, and division. In a wider sense, it also includes exponentiation, extraction of roots, and taking logarithms.
...
, Short Code allowed for branching and calls to a library of functions. The language was
interpreted and ran about 50 times slower than
machine code.
[Malik, Masud Ahmad. Evolution of the High Level Programming Languages: A Critical Perspective. ACM SIGPLAN Notices (December 1998) 33(12) page 74.]
See also
*
History of programming languages
*
Algorithm
In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
References
External links
* Wexelblat, Richard L. (Ed.) (1981). ''History of Programming Languages'', p. 9. New York: Academic Press.
* {{Cite web, url=http://hopl.info/showlanguage.prx?exp=2707&language=SHORT%20CODE, title=Short Code, last=, first=, date=, website=hopl.info, access-date=2018-05-20
Procedural programming languages
Programming languages created in 1950