GEORGE (programming language): Difference between revisions

Content deleted Content added
References: improved ref
touchups, could use more
 
(2 intermediate revisions by 2 users not shown)
Line 1:
{{confuse|George (algebraic compiler)}}
{{use dmy dates|date=July 2020|cs1-dates=y}}
'''GEORGE''' (General Order Generator) is a [[programming language]] invented by [[Charles Leonard Hamblin]] in 1957.<ref name="Hamblin_1957_1" /><ref name="Hamblin_1957_2" /><ref name="Hamblin_1957_3" /><ref name="Hamblin_1958" /> It was designed around a push-down pop-up stack for arithmetic operations, and employed [[reverse Polish notation]].<ref name="Beard_1997" /> The language included [[loop (computing)|loop]]s, [[subroutine]]s, [[conditional (programming)|conditional]]s, [[array data structure|vector]]s, and [[matrix (mathematics)|matrices]].
 
It was designed around a push-down pop-up stack for arithmetic operations, and employed [[reverse Polish notation]].<ref name="Beard_1997" />
 
The language included [[loop (computing)|loop]]s, [[subroutine]]s, [[conditional (programming)|conditional]]s, [[array data structure|vector]]s, and [[matrix (mathematics)|matrices]].
 
==Description==
Algebraic expressions were written in reverse Polish notation; thus, <math>a + b</math> was written <code>a b +</code>, and similarly for the other arithmetic operations of subtraction, multiplication, and division.
 
Line 131 ⟶ 128:
<ref name="Hamblin_1957_2">{{cite journal |title=An addressless coding scheme based on mathematical notation |author-first=Charles Leonard |author-last=Hamblin |author-link=Charles Leonard Hamblin |date=June 1957 |journal=Proceedings of the First Australian Conference on Computing and Data Processing |___location=Salisbury, South Australia |publisher=[[Weapons Research Establishment]]}}</ref>
<ref name="Hamblin_1958">{{cite book |author-first=Charles Leonard |author-last=Hamblin |author-link=Charles Leonard Hamblin |title=GEORGE IA and II: A semi-translation programming scheme for DEUCE: Programming and Operation Manual |publisher=School of Humanities, University of New South Wales, Kensington, New South Wales |date=1958 |url=http://members.iinet.net.au/~dgreen/deuce/GEORGEProgrammingManual.pdf |access-date=2020-07-27 |url-status=live |archive-url=https://web.archive.org/web/20200404093021/http://members.iinet.net.au/~dgreen/deuce/GEORGEProgrammingManual.pdf |archive-date=2020-04-04}}</ref>
<ref name="Beard_1997">{{cite magazine |magazine=[[Resurrection (magazine)|Resurrection]] - The Bulletin of the Computer Conservation Society |issn=0958-7403 |publisher=[[Computer Conservation Society]] (CCS) |volume= |number=18 |date=Autumn 1997 |orig-year=1996-10-01 |title=The KDF9 Computer — 30 Years On |author-first=Bob |author-last=Beard |pages=7–15 |url=http://www.cs.man.ac.uk/CCS/Archive/Resurrection/pdf/res18.pdf |access-date=2020-07-27 |url-status=live |archive-url=https://web.archive.org/web/20200727140754/http://www.cs.man.ac.uk/CCS/Archive/Resurrection/pdf/res18.pdf |archive-date=2020-07-27 |quote=[…] The [[KDF9]] is remarkable because it is the believed to be the first zero-address instruction format computer to have been announced (in 1960). It was first delivered at about the same time (early 1963) as the other famous zero-address computer, the [[Burroughs B5000]] in America. Like many modern pocket calculators, a zero-address machine allows the use of Reverse Polish arithmetic; this offers certain advantages to compiler writers. It is believed that the attention of the English Electric team was first drawn to the zero-address concept through contact with George (General Order Generator), an autocode programming system written for a [[English Electric DEUCE|Deuce]] computer by the [[University of Sydney]], Australia, in the latter half of the 1950s. George used [[Reversed Polish]], and the KDF9 team were attracted to this convention for the pragmatic reason of wishing to enhance performance by minimising accesses to main store. This may be contrasted with the more `theoretical' line taken independently by [[Burroughs Corporation|Burroughs]]. Besides a hardware [[nesting store]] or stack - the basic mechanism of a zero-address computer - the KDF9 had other groups of central registers for improving performance which gave it an interesting internal structure. […]}} [https://web.archive.org/web/20200427075718/http://www.cs.man.ac.uk/CCS/res/res18.htm#c] (NB. This is an edited version of a talk given to North West Group of the Society at the Museum of Science and Industry, Manchester, UK on 1996-10-01.)</ref>
<ref name="Hamblin_1957_3">{{cite journal |title=Computer Languages |author-first=Charles Leonard |author-last=Hamblin |author-link=Charles Leonard Hamblin |date=1957 |journal=The Australian Journal of Science |number<!-- or volume? -->=20? |pages=135–139 |postscript=;}} {{cite journal |title=Computer Languages |author-first=Charles Leonard |author-last=Hamblin |author-link=Charles Leonard Hamblin |date=November 1985 |journal=The Australian Computer Journal |volume=17 |issue=4 |pages=195–198 |type=Reprint}}</ref>
<ref name="Programming_Course">{{cite book |title=Programming Course |publisher=School of Electrical Engineering, [[The University of New South Wales]] |date=n.d. |page=24}}</ref>
}}
{{Authority control}}
 
[[Category:Programming languages]]
[[Category:Stack-oriented programming languages]]