Short Code (computer language): Difference between revisions

Content deleted Content added
m top: punct., correct initials
Improved the English a little.
 
(8 intermediate revisions by 8 users not shown)
Line 1:
{{Short description|Early higher-level language for electronic computers}}
{{about|the early computer language Short Code|the use of this term in connection with telecommunications|Short code}}{{Infobox programming language
{{Infobox programming language
| name = Short Code
| paradigm =
| released = {{Start date|1950}}
| developer = William F SchmidtSchmitt, A. B. Tonik, J. R. Logan
| influenced by = [[ENIAC Short Code]]
| influenced = [[Intermediate programming language]], [[OMNIBAC Symbolic Assembler]]
}}
'''Short Code''' was one of the first higher-level languages ever developed for an [[electronic computer]].<ref>Sebesta, R.  W. Concepts of Programming languages. 2006; M6 14:18 pp.  44. {{ISBN|0-321-33025-0}}.</ref> 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;. theThe execution time was, naturally, much slower though.<ref>Sebesta, R.  W. Concepts of Programming languages. 11E; Chapter 2, pp.  39. {{ISBN|978-0133943023}}.</ref>
 
==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 &nbsp;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 &nbsp;II by A. &nbsp;B. Tonik and J. &nbsp;R. Logan.<ref>Schmitt, William F. The UNIVAC SHORT CODE. Annals of the History of Computing (1988) 10:pages 7-87–8.</ref>
 
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.<ref>Schmitt, William F. The UNIVAC SHORT CODE. Annals of the History of Computing (1988) 10:page 15.</ref> For example, the expression:
 
<syntaxhighlight lang="c">
a = (b + c) / b * c
</syntaxhighlight>
 
was converted to Short Code by a sequence of substitutions and a final regrouping:
 
<syntaxhighlight lang="c">
X3 = ( X1 + Y1 ) / X1 * Y1 substitute variables
X3 03 09 X1 07 Y1 02 04 X1 Y1 substitute operators and parentheses.
Note Notethat multiplication is represented
represented by juxtaposition.</syntaxhighlight><syntaxhighlight lang="text">
07Y10204X1Y1 group into 12-byte words.
0000X30309X1
</syntaxhighlight>
 
Along with basic [[arithmetic]], Short Code allowed for branching and calls to a library of functions. The language was [[interpreter (computing)|interpreted]] and ran about 50 times slower than [[machine code]].<ref>Malik, Masud Ahmad. Evolution of the High Level Programming Languages: A Critical Perspective. ACM SIGPLAN Notices (December 1998) 33(12) page 74.</ref>