Jump to content

Short Code (computer language): Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
m removed a # to enable automatic link
minimal code markup
 
(39 intermediate revisions by 35 users not shown)
Line 1: 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}}
{{about|the early computer language Short Code|the use of this term in connection with telecommunications|Short code}}
{{Infobox programming language
{{Infobox programming language
Line 4: Line 5:
| paradigm =
| paradigm =
| released = {{Start date|1950}}
| released = {{Start date|1950}}
| developer = William F Schmidt, A.B. Tonik, J.R. Logan
| developer = William F Schmitt, A. B. Tonik, J. R. Logan
| influenced by = [[ENIAC Short Code]]
| influenced by = [[ENIAC Short Code]]
| influenced = [[Intermediate Programming Language]], [[OMNIBAC Symbolic Assembler]]
| influenced = [[Intermediate programming language]], [[OMNIBAC Symbolic Assembler]]
}}
}}
'''Short Code''' was one of the first higher-level languages ever developed for an [[electronic computer]].<ref name=Sebesta>Sebesta, 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.
'''Short Code''' was one of the first higher-level languages 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; the execution time was much slower though.<ref>Sebesta, R. W. Concepts of Programming languages. 11E; Chapter 2, pp. 39. {{ISBN|978-0133943023}}.</ref>


==History==
==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.<ref>Schmitt, William F. The UNIVAC SHORT CODE. Annals of the History of Computing (1988) 10:pages 7-8</ref>
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–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:
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
a = (b + c) / b * c
</syntaxhighlight>


was converted to Short Code by a sequence of substitutions and a final regrouping:
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 = ( X1 + Y1 ) / X1 * Y1 substitute variables
X3 03 09 X1 07 Y1 02 04 X1 Y1 substitute operators and parentheses.
X3 03 09 X1 07 Y1 02 04 X1 Y1 substitute operators and parentheses.
Note multiplication is represented
Note that multiplication is
by juxtaposition.
represented by juxtaposition.</syntaxhighlight><syntaxhighlight lang="text">
07Y10204X1Y1 group into 12-byte words.
07Y10204X1Y1 group into 12-byte words.
0000X30309X1
0000X30309X1p0p90p;o;op;op;
</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>
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 ==
== See also ==
* [[History of programming languages]]
* [[History of programming languages]]
* [[algorithm]]
* [[Algorithm]]


==References==
==References==
{{reflist}}
{{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==
==External links==
*[http://www.byte.com/art/9509/sec7/art19.htm A Brief History of Programming Languages]
* Wexelblat, Richard L. (Ed.) (1981). ''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:Procedural programming languages]]
[[Category:Programming languages created in 1950]]

[[et:Short Code]]
[[ja:Short Code (プログラミング言語)]]
[[pt:Short Code]]
[[ru:Short Code]]

Latest revision as of 11:48, 29 September 2024

Short Code
DeveloperWilliam F Schmitt, A. B. Tonik, J. R. Logan
First appeared1950 (1950)
Influenced by
ENIAC Short Code
Influenced
Intermediate programming language, OMNIBAC Symbolic Assembler

Short Code was one of the first higher-level languages 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.[2]

History

[edit]

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.[3]

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.[4] 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, 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.[5]

See also

[edit]

References

[edit]
  1. ^ Sebesta, R. W. Concepts of Programming languages. 2006; M6 14:18 pp. 44. ISBN 0-321-33025-0.
  2. ^ Sebesta, R. W. Concepts of Programming languages. 11E; Chapter 2, pp. 39. ISBN 978-0133943023.
  3. ^ Schmitt, William F. The UNIVAC SHORT CODE. Annals of the History of Computing (1988) 10:pages 7–8.
  4. ^ Schmitt, William F. The UNIVAC SHORT CODE. Annals of the History of Computing (1988) 10:page 15.
  5. ^ Malik, Masud Ahmad. Evolution of the High Level Programming Languages: A Critical Perspective. ACM SIGPLAN Notices (December 1998) 33(12) page 74.
[edit]
  • Wexelblat, Richard L. (Ed.) (1981). History of Programming Languages, p. 9. New York: Academic Press. ISBN 0-12-745040-8
  • "Short Code". hopl.info. Retrieved 2018-05-20.