- Autocode
-
Autocode is the name of a family of "simplified coding systems", later called programming languages, devised in the 1950s and 1960s for a series of digital computers at the Universities of Manchester and Cambridge. Autocode was a generic term; the autocodes for different machines were not necessarily closely related as are, for example, the different versions of the single language FORTRAN.
The first autocode and its compiler were developed by Alick Glennie in 1952 for the Mark 1 computer at the University of Manchester and is considered by some to be the first compiled programming language.[1]
The second autocode was developed for the Mark 1 by R. A. Brooker in 1954 and was called the "Mark 1 Autocode".
Brooker also developed an autocode for the Ferranti Mercury in the 1950s in conjunction with the University of Manchester. Mercury Autocode had a limited repertoire of variables a-z and a'-z' and, in some ways resembled early versions of the later Dartmouth BASIC language. It pre-dated ALGOL, having no concept of stacks and hence no recursion or dynamically-allocated arrays. In order to overcome the relatively small store size available on Mercury, large programs were written as distinct "chapters", each of which constituted an overlay. Some skill was required to minimise time-consuming transfers of control between chapters. This concept of overlays from drum under user control became common until virtual memory became available in later machines. Slightly different dialects of Mercury Autocode were implemented for the Ferranti Atlas (distinct from the later Atlas Autocode) and the ICT 1300 and 1900 range.
The version for the EDSAC 2 was devised by D. F. Hartley of University of Cambridge Mathematical Laboratory in 1961. It was ALGOL-like in structure and was optimised for use by scientists and engineers. Developments of it ran on the successor Titan (the prototype Atlas 2 computer), and a similar language was developed for the University of Manchester Atlas 1 machine (see Atlas Autocode).
Notes
- ^ Knuth, Donald E.; Pardo, Luis Trabb. "Early development of programming languages". Encyclopedia of Computer Science and Technology (Marcel Dekker) 7: 419–493
The Autocode for the EDSAC 2 was devised by D. F. Hartley of University of Cambridge Mathematical Laboratory in 1961. Known as EDSAC 2 Autocode, it was a straight development from Mercury Autocode adapted for local circumstances, and was noted for it object code optimisation and source-language diagnostics which were advanced for the time. A version was developed for the successor TItan (the prototype Atlas 2 computer) as a temporary stop-gap while a more substantially advanced language known as CPL was being developed. CPL was never completed but did give rise to BCPL (developed by M. Richards), which in turn led to B and ultimately C.
As a contemporary but separate thread of development, Atlas Autocode was developed for the Atlas machine at Manchester.
References
- Campbell-Kelly, Martin (1980). "Programming the Mark 1: Early Programming Activity at the University of Manchester". Annals of the History of Computing (IEEE) 2 (2): 130–167. doi:10.1109/MAHC.1980.10018.
- Garcia Camarero, Ernesto (1961). AUTOCODE un sistema simplificado de codificacion para la computadora MERCURY. Universidad de Buenos Aires. pp. 70. http://elgranerocomun.net/AUTOCODE-un-sistema-simplificado.html.(Spanish)
External links
Categories:- Procedural programming languages
- University of Cambridge Computer Laboratory
- Programming languages created in the 1950s
- Programming language topic stubs
Wikimedia Foundation. 2010.