Short Code (computer language): Difference between revisions

Content deleted Content added
Flow3r (talk | contribs)
m add missing bullets
Improved the English a little.
 
(42 intermediate revisions by 38 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
Line 4 ⟶ 5:
| paradigm =
| released = {{Start date|1950}}
| developer = William F SchmidtSchmitt, A. B. Tonik, J. R. Logan
| influenced by = [[ENIAC Short Code]]
| influenced = [[Intermediate Programmingprogramming Languagelanguage]], [[OMNIBAC Symbolic Assembler]]
}}
'''Short Code''' was one of the first higher-level languages ever developed for an [[electronic computer]].<ref name=Sebesta>Sebesta, R. W.S 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 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.<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>
 
== See also ==
* [[History of programming languages]]
* [[algorithmAlgorithm]]
 
==References==
{{reflist}}
* Wexelblat, Richard L. (Ed.) (1981). <em>History of Programming Languages</em>, p. 9. New York: Academic Press. ISBN 0-12-745040-8
* Murdoch, Short Code (HOPL) [http://hopl.murdoch.edu.au/showlanguage.prx?exp=2707&language=SHORT%20CODE]
 
==External links==
*[http://www Wexelblat, Richard L.byte (Ed.com/art/9509/sec7/art19) (1981).htm A Brief ''History of Programming Languages]'', p.&nbsp;9. New York: Academic Press. {{ISBN|0-12-745040-8}}
* {{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}}
*[http://www.uow.edu.au/~hasan/buss930/prog/prlangs1.htm A Brief History of Computing Languages]
*[http://hopl.murdoch.edu.au/findlanguages2.prx?id=us&which=ByCountry&ByYear=Yes The Encyclopedia of Computer Languages]
 
[[Category:Procedural programming languages]]
[[Category:Programming languages created in 1950]]
 
[[et:Short Code]]
[[ja:Short Code (プログラミング言語)]]
[[pt:Short Code]]
[[ru:Short Code]]