This article needs additional citations for verification .(November 2019) |
Paradigms | Multi-paradigm: procedural, imperative, structured |
---|---|
Family | ALGOL |
Designed by | Ron Morrison, Pete Bailey, Fred Brown, Paul Cockshott, Ken Chisholm, Al Dearle |
Developer | University of St Andrews University of Edinburgh |
First appeared | 1983 |
Implementation language | S-algol |
Platform | ICL mainframe computers |
Influenced by | |
ALGOL 60, S-algol | |
Influenced | |
Napier88 |
PS-algol is an orthogonally persistent programming language. [1] [2]
PS-algol was an extension of the language S-algol implemented by the University of St Andrews and the University of Edinburgh, Scotland. S-algol was designed by Ron Morrison and extended by Pete Bailey, Fred Brown, Paul Cockshott, Ken Chisholm, and Al Dearle. These extensions were additional standard functions that provide a persistent heap that survives termination of PS-algol programs.
PS-algol was the world's first fully implemented persistent programming language, [3] and had many users both in academia and, notably, in International Computers Limited (ICL) research labs. [4] [5]
PS-algol was conceived by chance, when Ron Morrison was on sabbatical at the University of Edinburgh and met Malcolm Atkinson. Atkinson had been experimenting with persistent programming languages and was struggling to find a coherent model for a persistent Pascal variant. Morrison, whose interest in general-purpose programming had led to the development of S-algol, a general purpose teaching language, realised that S-algol's type system would more easily allow adding orthogonal persistence.
ALGOL is a family of imperative computer programming languages originally developed in 1958. ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the Association for Computing Machinery (ACM) in textbooks and academic sources for more than thirty years.
VME is a mainframe operating system developed by the UK company International Computers Limited. Originally developed in the 1970s to drive ICL's then new 2900 Series mainframes, the operating system is now known as OpenVME incorporating a Unix subsystem, and runs on ICL Series 39 and Trimetra mainframe computers, as well as industry-standard x64 servers.
ALGOL W is a programming language. It is based on a proposal for ALGOL X by Niklaus Wirth and Tony Hoare as a successor to ALGOL 60. ALGOL W is a relatively simple upgrade of the original ALGOL 60, adding string, bitstring, complex number and reference to record data types and call-by-result passing of parameters, introducing the while
statement, replacing switch
with the case
statement, and generally tightening up the language.
In computer programming, bounds checking is any method of detecting whether a variable is within some bounds before it is used. It is usually used to ensure that a number fits into a given type, or that a variable being used as an array index is within the bounds of the array. A failed bounds check usually results in the generation of some sort of exception signal.
ALGOL 60 is a member of the ALGOL family of computer programming languages. It followed on from ALGOL 58 which had introduced code blocks and the begin
and end
pairs for delimiting them, representing a key advance in the rise of structured programming. ALGOL 60 was one of the first languages implementing function definitions. ALGOL 60 function definitions could be nested within one another, with lexical scope. It gave rise to many other languages, including CPL, PL/I, Simula, BCPL, B, Pascal, and C. Practically every computer of the era had a systems programming language based on ALGOL 60 concepts.
ALGOL 68 is an imperative programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously defined syntax and semantics.
Hope is a small functional programming language developed in the 1970s at the University of Edinburgh. It predates Miranda and Haskell and is contemporaneous with ML, also developed at the University. Hope was derived from NPL, a simple functional language developed by Rod Burstall and John Darlington in their work on program transformation. NPL and Hope are notable for being the first languages with call-by-pattern evaluation and algebraic data types.
Edinburgh IMP is a development of Atlas Autocode, initially developed around 1966-1969 at the University of Edinburgh, Scotland. It is a general-purpose programming language which was used heavily for systems programming.
ALGOL 68C is an imperative computer programming language, a dialect of ALGOL 68, that was developed by Stephen R. Bourne and Michael Guy to program the Cambridge Algebra System (CAMAL). The initial compiler was written in the Princeton Syntax Compiler that was implemented by J. H. Mathewman at Cambridge.
S-algol is a computer programming language derivative of ALGOL 60 developed at the University of St Andrews in 1979 by Ron Morrison and Tony Davie. The language is a modification of ALGOL to contain orthogonal data types that Morrison created for his PhD thesis. Morrison would go on to become professor at the university and head of the department of computer science. The S-algol language was used for teaching at the university at an undergraduate level until 1999. It was also the language taught for several years in the 1980s at a local school in St. Andrews, Madras College. The computer science text Recursive Descent Compiling describes a recursive descent compiler for S-algol, implemented in S-algol.
Ron Morrison was the head of School of the computer science department of the University of St. Andrews where he worked on programming languages, inventing S-algol, and coinventing PS-algol and Napier88. He had graduated from St. Andrews with a Doctor of Philosophy (Ph.D.) in 1979. He is also heavily involved with local athletics, coaching the University Cross-Country team, and young, up and coming local athletes. He is a Fellow of the Royal Society of Edinburgh, and the current President of Scottish Athletics.
Napier88 is an orthogonally persistent programming language that was designed and implemented at the University of St Andrews, Scotland. The primary designer was Ron Morrison, whose initial designs were extended and implemented by Fred Brown, Richard Connor, and Al Dearle. Napier88 was ahead of its time in many ways, and was the first robustly implemented language to combine a polymorphic type system with orthogonal persistence. The language was robustly implemented and released to users from both industry and academia; up to 1,000 registered users were recorded in due course. The language, however, was only intended to provide a proof of concept for an experiment in persistent programming; some time after 1989 the group's interests moved on and the language was no longer maintained.
In computer science, persistence refers to the characteristic of state of a system that outlives the process that created it. This is achieved in practice by storing the state as data in computer data storage. Programs have to transfer data to and from storage devices and have to provide mappings from the native programming-language data structures to the storage device data structures.
ALGOL 68-R was the first implementation of the Algorithmic Language ALGOL 68.
ALGOL 68RS is the second ALGOL 68 compiler written by I. F. Currie and J. D. Morrison, at the Royal Signals and Radar Establishment (RSRE). Unlike the earlier ALGOL 68-R, it was designed to be portable, and implemented the language of the Revised Report.
Malcolm Phillip Atkinson is a professor of e-Science, in the University of Edinburgh School of Informatics. He is known for his work in the areas of object-oriented databases, database systems, software engineering and e-Science and was the UK's first e-Science Envoy (2006–2011) and the Director of the e-Science Institute and National e-Science Centre, University of Edinburgh.
William Paul Cockshott is a Scottish academic in the fields of computer science and Marxist economics. He is a Reader at the University of Glasgow. Since 1993 he has authored multiple works in the tradition of scientific socialism, most notably Towards a New Socialism and How the World Works.
John Rosenberg is an Australian higher education consultant, professional Board Director, Australian academic, information technology (IT) professional and the former Senior Deputy Vice-Chancellor and Vice-President at La Trobe University in Victoria, Australia.
Susan Bond, was a scientific officer and computer programmer for the Mathematics Division of the Royal Radar Establishment (RRE) in the United Kingdom. She worked extensively on the programming language ALGOL 68 and the Royal Radar Establishment Automatic Computer (RREAC), an early solid-state electronics, ICL 1907F computer.