Short Code (computer language)

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

Lua error in Module:Infobox at line 199: malformed pattern (missing ']'). Short Code was one of the first higher-level languages ever developed for an electronic computer.[1] Unlike machine code, Short Code statements represented mathematic expressions rather than a machine instruction. Also known as an automatic programming, the source code was not compiled but executed through an interpreter to simplify the programming process; the execution time was much slower though.[1]

History

Short Code was proposed by John Mauchly in 1949 and originally known as Brief Code. William Schmitt implemented a version of Brief Code in 1949 for the BINAC 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.[2]

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.[3] 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 multiplication is represented
                                       by juxtaposition.
07Y10204X1Y1                      group into 12-byte words.
0000X30309X1

Along with basic arithmetic, 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.[4]

See also

References

<templatestyles src="Reflist/styles.css" />

Cite error: Invalid <references> tag; parameter "group" is allowed only.

Use <references />, or <references group="..." />
  • Wexelblat, Richard L. (Ed.) (1981). History of Programming Languages, p. 9. New York: Academic Press. ISBN 0-12-745040-8
  • Murdoch, Short Code (HOPL)

External links

  1. 1.0 1.1 Sebesta, W.S Concepts of Programming languages. 2006;M6 14:18 pp.44. ISBN 0-321-33025-0 Cite error: Invalid <ref> tag; name "Sebesta" defined multiple times with different content
  2. Schmitt, William F. The UNIVAC SHORT CODE. Annals of the History of Computing (1988) 10:pages 7-8
  3. Schmitt, William F. The UNIVAC SHORT CODE. Annals of the History of Computing (1988) 10:page 15
  4. Malik, Masud Ahmad. Evolution of the High Level Programming Languages: A Critical Perspective. ACM SIGPLAN Notices (December 1998) 33(12) page 74.