This article includes a list of references, related reading, or external links, but its sources remain unclear because it lacks inline citations. Please help improve this article by introducing more precise citations. (August 2017) (Learn how and when to remove this message)
ParadigmsMulti-paradigm: Procedural, imperative, structured
Designed byRon Morrison, Fred Brown, Richard Connor, Al Dearle
DeveloperUniversity of St Andrews
First appeared1988; 36 years ago (1988)
Implementation languageS-algol
Influenced by
ALGOL 60, S-algol, PS-algol

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 year the first implementation was in fact released) the group's interests moved on and the language was no longer maintained.

Its influence lives on in various other systems however; the CORBA type ANY is distinctly recognisable in Napier88's type ANY; Microsoft's Common Language Runtime (CLR) uses a similar polymorphic architecture, and Java's parametric types solve some of the same problems of uninstantiated types escaping from their static scope.


Napier88 was the third of a family of languages designed and implemented by Morrison at St Andrews, following on from S-algol and PS-algol.

Further reading