Jump to content


From Wikipedia, the free encyclopedia
ParadigmsMulti-paradigm: procedural, imperative, structured
Designed byRon Morrison, Pete Bailey, Fred Brown, Paul Cockshott, Ken Chisholm, Al Dearle
DeveloperUniversity of St Andrews
University of Edinburgh
First appeared1983; 41 years ago (1983)
Implementation languageS-algol
PlatformICL mainframe computers
Influenced by
ALGOL 60, S-algol

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.

See also



  1. ^ Atkinson, M.P.; Bailey, P.J.; Chisholm, K.J.; Cockshott, W.P.; Morrison, R. (1983). "PS-algol: A Language for Persistent Programming" (pdf). Proceedings 10th Australian National Computer Conference. 10th Australian National Computer Conference. Melbourne, Australia. p. 70–79.
  2. ^ Cockshott, W. Paul (16 January 2006). "Persistent S-algol". School of Computing Science. University of Glasgow. Retrieved 19 November 2019.
  3. ^ Dearle, Alan; Kirby, Graham; Morrison, Ron (2009). "Orthogonal Persistence Revisited". Lecture Notes in Computer Science vol. 5936. 2nd International Conference on Object Databases (ICOODB 2009). Zurich, Switzerland. p. 1–22.
  4. ^ Atkinson, Malcolm; Morrison, Ron; Pratten, Graham (May 1987). "PISA - A Persistent Information Space Architecture" (PDF). ICL Technical Journal. 5 (3): 477–491. Retrieved 21 Feb 2022.
  5. ^ Greenwood, R. Mark; Guy, Michael R.; Robinson, D. John K. (May 1992). "The use of a Persistent Language in the Implementation of a Process Support System" (PDF). ICL Technical Journal. 8 (1): 108–130. Retrieved 21 February 2022.