Charles Hamblin
|
Charles Leonard Hamblin (1922-1985) was an Australian philosopher and one of Australia's first computer scientists. His main early contributions to computing, which date from the mid 1950s, were the development of Reverse Polish Notation (RPN) and the zero-address store. He was also the developer of one of the first programming languages, GEORGE. Since his death, his ideas have become influential in the design of computer interaction protocols, and are expected to shape the next generation of e-commerce systems.
Hamblin was born in 1922 and attended North Sydney Boys' High School and Geelong Grammar. He then took degrees in Arts (Philosophy and Mathematics) and in Science (Physics), followed by an MA in Philosophy (First Class Honours) at Melbourne University, with his studies interrupted by work as a radar officer in the RAAF during World War II. Following the war, he gained a PhD at the London School of Economics, University of London on the topic, "Language and the Theory of Information", apparently under Karl Popper (Hamblin 1957a). Hamblin's thesis presented a critique of Shannon's theory of information from a semantic perspective, and developed a possible-worlds semantics for question-response exchanges. Between 1955 and his death in 1985 he was a Lecturer and Professor in the School of Philosophy at New South Wales University of Technology (NSWUT), which later became the University of New South Wales (UNSW).
In 1956, the University purchased a DEUCE computer manufactured by the English Electric Company (EEC), an early British computer manufacturer, and Hamblin, with his radar background, became involved in working with this machine. This was the third academic computer in Australia. Hamblin soon became aware of the problems of (a) computing mathematical formulae containing brackets, and (b) the memory overhead in having dealing with memory stores each of which had its own name. One solution to the first problem was Jan Lukasiewicz's Polish notation, which enables a writer of mathematical notation to instruct a reader the order in which to execute the operations (e.g. addition, multiplication, etc) without using brackets. Polish notation achieves this by having an operator (+, *, etc) precede the operands to which it applies, e.g., +ab, instead of the usual, a+b. Hamblin, with his training in formal logic, knew of Lukasiewicz's work.
However, this does not solve the second problem. Hamblin realized that placing the operation symbol to the right of the operands (i.e., reversing the polish notation, as in ab+) would enable the machine to make use of a store which did not require an address -- the current operation would always be conducted on the most-recent operands inserted and still remaining in the store. This store came to be called a stack, or last-in, first-out (LIFO) store. He implemented these ideas in a programming language for the DEUCE machine, a language he called GEORGE, for General Order Generator. This work was undertaken at a time when there were only a handful of programming languages, and indeed still some resistance to the idea of non-assemblor languages (due to their greater memory requirements).
Hamblin presented his work at the first Australian conference on computing, which was held at the Weapon Research Establishment in Salisbury, South Australia, in June 1957 (Hamblin 1957b). Employees of the English Electric Company were present at this conference, and took his ideas back to England. As a consequence, Hamblin's architecture was implemented in the company's next machine, which came to be called the KDF9. The architecture of this machine even used Hamblin's terminology. This machine was announced in 1960 and delivered (i.e. made available commercially) in 1963. Hamblin published his ideas in 1957 (Hamblin 1957b, 1957c) and 1962 (Hamblin 1962).
Another computer, the American Burroughs B5000, announced in 1961 and delivered in 1963, also used a zero-address architecture, and also enabled reverse polish notation to be used for programming. R. S. Barton, one of the designers of the B5000, has written that he developed RPN independently of Hamblin, sometime in 1958 while reading a textbook on symbolic logic, and before he was aware of Hamblin's work. A decade after Hamblin first published his ideas, engineers at Hewlett-Packard (HP) developed a personal calculator, the 9100A Desktop Calculator, which used RPN. This calculator, the first in a long line by HP, was released in 1968, and it popularized RPN among the scientific and engineering communities; note, however, that early advertisements for the 9100A did not mention RPN.
Hamblin's contribution to computer science was recognized with an obituary in the Australian Computer Journal (Allen 1985) and in an influential history of British computing (Lavington 1980). In addition, GEORGE is listed in Bill Kinnersley's comprehensive directory of computer languages, The Language List. In the 1960s, Hamblin also worked on implementing Tarski's decision method for real closed fields (Tarski 1951), the first order theory of real numbers with addition and multiplication, and hired two programmers to assist in this project, Malcolm Newey and Vaughan Pratt. However, only in 1974 was it shown by Fischer and Rabin (1974) that the running time of this problem had an exponential lower bound.
Although usually not credited, Hamblin was the originator of two other ideas which subsequently became important in Artificial Intelligence. Firstly, Hamblin appears to have been the first person to define a formal measure of plausibility, distinct from that of probability, in a paper published in 1959. Alternative formalisms for uncertainty have come to play a very important role in Artificial Intelligence, particularly in the design of knowledge-based systems, due to the failure of the standard Kolmogorov axioms of probability to adequately account for all forms of uncertainty and for its manipulation. Secondly, Hamblin was the first person to propose an axiomatic account of time based on intervals, rather than points. This was in a paper published in 1969. An interval calculus for time was later proposed by James Allen (1984), and has been influential in AI, both as a basis for reasoning about time, and, when extended to multiple dimensions, as a basis for reasoning about space.
From the 1960s, Hamblin returned to work in philosophy, particularly the philosophy of argumentation, and wrote two very influential books. One of these, Fallacies, published in 1970, is a study of the classical logical fallacies, such as begging the question, which Hamblin examined by means of formal dialogue games. These are games between speakers who utter statements according to strict rules, and they were first studied by Aristotle. Being rule-governed, these games have gained the attention of computer scientists, and, from about 1989, they have been applied in a number of areas, including: natural language processing; human-machine interaction; the design of complex software; and for dialogues between autonomous software agents. Interaction and communication protocols based on formal dialogue games are likely to form the basis for the next generation of e-commerce systems. Another of Hamblin's books, Imperatives, published posthumously in 1987, has also been influential in recent work in computer science, in developing protocols for the delegation of tasks between software agents.
Hamblin was fluent in several languages, including ancient Greek and Latin. He was one of three fellow-students from his time at Geelong Grammar to become professors of philosophy. At the time of his death, he was apparently attempting to set words of Wittgenstein to music.
Charles Hamblin was a pioneer computer scientist and a prominent philosopher, whose influence on the subject is still being felt. His contributions to applied and theoretical computing show the deep links which our subject has had, and continues to have, with philosophy and logic.