Skip to main content

The Napier88 Persistent Programming Language and Environment

  • Chapter
Fully Integrated Data Environments

Part of the book series: Esprit Basic Research Series ((ESPRIT BASIC))

Abstract

Persistent programming systems are designed as an implementation technology for long lived, concurrently accessed and potentially large bodies of data and programs, known here as persistent application systems (PASs). Within a PAS the persistence concept is used to abstract over the physical properties of data such as where it is kept, how long it is kept and in what form it is kept. As such it is seen as having a number of benefits in simplifying the task of PAS programming. Here, we describe the integrated design of the Napier88 persistent programming system and how Napier88 may be used to develop PASs.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Atkinson MP, Morrison R, Pratten GD.Designing a Persistent Information Space ArchitectureIn: Proc. 10th IFIP World Congress, Dublin, 1986, pp 115–120.

    Google Scholar 

  2. Connor RCH. The Napier Type-Checking Module. Universities of Glasgow and St Andrews Report PPRR58–88, 1988.

    Google Scholar 

  3. Connor RCH, Brown AB, Cutts QI, Dearie A, Morrison R, Rosenberg J. Type Equivalence Checking in Persistent Object Systems. In: Dearie A, Shaw GM, Zdonik SB (ed) Implementing Persistent Object Bases, Principles and Practice, Proc. 4th International Workshop on Persistent Object Systems, Martha’s Vineyard, USA. Morgan Kaufmann, 1990, pp 151–164.

    Google Scholar 

  4. Connor RCH. Types and Polymorphism in Persistent Programming Systems. Ph.D. thesis, University of St Andrews, 1990

    Google Scholar 

  5. Connor RCH, McNally DJ, Morrison R. Subtyping and Assignment in Database Programming Languages. In: Kanellakis P, Schmidt JW (ed) Database Programming Languages: Bulk Types and Persistent Data, Proc. 3rd International Workshop on Database Programming Languages, Nafplion, Greece. Morgan Kaufmann, 1991, pp 363–382.

    Google Scholar 

  6. Connor RCH, Morrison R. Subtyping Without Tears. In: Proc. 15th Australian Computer Science Conference, Hobart, Tasmania, 1992, pp 209–225.

    Google Scholar 

  7. Morrison R, Brown AL, Carrick R, Connor RCH, Dearie A, Atkinson MP. The Napier Type System. In: Rosenberg J, Koch DM (ed) Persistent Object Systems, Proc. 3rd International Workshop on Persistent Object Systems, Newcastle, Australia 1989. Workshops in Computing, Springer-Verlag, 1990, pp 3–18.

    Google Scholar 

  8. Atkinson MP, Lécluse C, Philbrow P, Richard P.Design Issues in a Map Language. In: Kanellakis P, Schmidt JW (ed) Bulk Types & Persistent Data. Morgan Kaufmann, 1991, pp 20–32

    Google Scholar 

  9. Connor RCH, Atkinson MP, Berman S, Cutts QI, Kirby GNC, Morrison R. The Joy of Sets. In: Been C, Ohori A, Shasha DE (ed) Database Programming Languages, Proc. 4th International Conference on Database Programming Languages, New York City. Workshops in Computing, Springer-Verlag, 1993, pp 417–433.

    Google Scholar 

  10. Connor RCH, Dearie A, Morrison R, Brown AL. Existentially Quantified Types as a Database Viewing Mechanism. In: Bancilhon F, Thanos C, Tsichritzis D (ed) Lecture Notes in Computer Science 416, Proc. 2nd International Conference on Extending Database Technology, Venice, Italy. Springer-Verlag, 1990, pp 301–315.

    Google Scholar 

  11. Morrison R, Brown AL, Connor RCH et al Protection in Persistent Object Systems. In: Rosenberg J, Keedy JL (ed) Security and Persistence, Proc. International Workshop on Security and Persistence, Bremen, 1990. Springer-Verlag, 1990, pp 48–66.

    Google Scholar 

  12. Morrison R, Dearle A, Connor RCH, Brown AL. An Ad-Hoc Approach to the Implementation of Polymorphism. ACM Transactions on Programming Languages and Systems 1991; 13,3:342–371.

    Article  Google Scholar 

  13. Connor RCH, Dearle A, Morrison R, Brown AL. An Object Addressing Mechanism for Statically Typed Languages with Multiple Inheritance. In: Proc. OOPSLA’89, New Orleans, Louisiana, 1989.

    Google Scholar 

  14. Atkinson MP, Buneman OP, Morrison R. Binding and Type Checking in Database Programming Languages. Computer Journal 1988; 31,2:99–109.

    Article  MATH  Google Scholar 

  15. Atkinson MP, Morrison R. Types, Bindings and Parameters in a Persistent Environment. In: Atkinson MP, Buneman OP, Morrison R (ed) Data Types and Persistence, Proc. 1st International Workshop on Persistent Object Systems, Appin, Scotland. Topics in Information Systems, Springer-Verlag, 1988, pp 3–20.

    Google Scholar 

  16. Morrison R, Brown AL, Dearie A, Atkinson MP. On the Classification of Binding Mechanisms. Information Processing Letters 1990;34:51–55.

    Article  MATH  Google Scholar 

  17. Morrison R, Connor RCH, Cutts QI, Dunstan VS, Kirby GNC. Exploiting Persistent Linkage in Software Engineering Environments. Computer Journal 1995; 38,1:1–16.

    Google Scholar 

  18. Morrison R, Brown AL, Carrick R, Connor RCH, Dearie A, Atkinson MP.Polymorphism, Persistence and Software Reuse in a Strongly Typed Object Oriented Environment Software Engineering Journal 1987; December: 199–204.

    Google Scholar 

  19. Morrison R, Connor RCH, Cutts QI, Kirby GNC. Persistent Possibilities for Software Environments. In: The Intersection between Databases and Software Engineering,Proc. ICSE-16 Workshop on the Intersection between Databases and Software Engineering, Sorrento, Italy. IEEE Computer Society Press, 1994, pp 78–87.

    Google Scholar 

  20. Kirby GNC, Connor RCH, Cutts QI, Dearie A, Farkas AM, Morrison R. Persistent Hyper-Programs. In: Albano A, Morrison R (ed) Persistent Object Systems, Proc. 5th International Workshop on Persistent Object Systems, San Miniato, Italy. Workshops in Computing, Springer-Verlag, 1992, pp 86–106.

    Google Scholar 

  21. Connor RCH, Cutts QI, Kirby GNC, Morrison R. Using Persistence Technology to Control Schema Evolution. In: Proc. 9th ACM Symposium on Applied Computing, Phoenix, Arizona, 1994, pp 441–446

    Google Scholar 

  22. Atkinson MP, Sj0berg DIK, Morrison R. Managing Change in Persistent Object Systems. In: Proc. JSSST International Symposium on Object Technologies for Advanced Software, Kanazawa, Japan, 1993, pp 315–338.

    Google Scholar 

  23. Morrison R, Connor RCH, Cutts QI, Kirby GNC, Stemple D. Mechanisms for Controlling Evolution in Persistent Object Systems. Journal of Microprocessors and Microprogramming 1993; 17,3:173–181.

    Google Scholar 

  24. Dearle A, Cutts QI, Connor RCH. Using Persistence to Support Incremental System Construction. Journal of Microprocessors and Microprogramming 1993; 17,3:161–171.

    Google Scholar 

  25. Morrison R,Brown AL,Carrick R,Connor RCH,Dearle A. On the Integration of Object-Oriented and Process-Oriented Computation in Persistent Environments. In: Dittrich KR (ed) Lecture Notes in Computer Science 334, Proc. 2nd International Workshop on Object-Oriented Database Systems, Bad Münster am Stein-Ebernburg, Germany. Springer-Verlag, 1988, pp 334–339.

    Google Scholar 

  26. Morrison R, Barter CJ, Brown AL et al. Language Design Issues in Supporting Process-Oriented Computation in Persistent Environments.In:Proc. 22nd International Conference on System Sciences, Hawaii, 1989, pp 736–744.

    Google Scholar 

  27. Munro DS, Connor RCH, Morrison R, Scheuerl S, Stemple D. Concurrent Shadow Paging in the Flask Architecture. In: Atkinson MP, Maier D, Benzaken V (ed) Persistent Object Systems, Tarascon 1994, Proc. 6th International Workshop on Persistent Object Systems, Tarascon, France. Workshops in Computing, Springer-Verlag, 1994, pp 16–42.

    Google Scholar 

  28. Stemple D, Morrison R. Specifying Flexible Concurrency Control Schemes: An Abstract Operational Approach. In: Proc. 15th Australian Computer Science Conference, Hobart, Tasmania, 1992, pp 873–891.

    Google Scholar 

  29. Brown AL, Rosenberg J. Persistent Object Stores: An Implementation Technique. In: Dearle A, Shaw GM, Zdonik SB (ed) Implementing Persistent Object Bases, Principles and Practice, Proc. 4th International Workshop on Persistent Object Systems, Martha′s Vineyard, USA. Morgan Kaufmann, 1990, pp 199–212.

    Google Scholar 

  30. Brown AL, Cockshott WP. The CPOMS Persistent Object Management System. Universities of Glasgow and St Andrews Report PPRR-13–85, 1985.

    Google Scholar 

  31. Brown AL, Morrison R. A Generic Persistent Object Store. Software Engineering Journal 1992; 7,2:161–168.

    Article  Google Scholar 

  32. Brown AL, Mainetto G, Matthes F, Müller R, McNally DJ. An Open System Architecture for a Persistent Object Store. In: Proc. 25th International Conference on Systems Sciences, Hawaii, 1992, pp 766–776

    Google Scholar 

  33. Vaughan F, Schunke T, Koch B, Dearie A, Marlin C, Barter C. A Persistent Distributed Architecture Supported by the Mach Operating System. In: Proc. Proceedings of the 1st USENIX Conference on the Mach Operating System, 1990, pp 123–140

    Google Scholar 

  34. Koch B, Schunke T, Dearle A et al. Cache Coherence and Storage Management in a Persistent Object System. In: Dearie A, Shaw G, Zdonik SB (ed) Implementing Persistent Object Bases. Morgan Kaufmann, 1990, pp 103–113

    Google Scholar 

  35. Brown AL. Persistent Object Stores. Ph.D. thesis, University of St Andrews, 1989.

    Google Scholar 

  36. Munro DS. On the Integration of Concurrency, Distribution and Persistence. Ph.D. thesis, University of St Andrews, 1993

    Google Scholar 

  37. Sjøberg DIK. Thesaurus-Based Methodologies and Tools for Maintaining Persistent Application Systems. Ph.D. thesis, University of Glasgow, 1993

    Google Scholar 

  38. Sjøberg DIK, Atkinson MP, Lopes JC, Trinder PW.Building an Integrated Persistent Application. In: Beeri C, Ohori A, Shasha DE (ed) Database Programming Languages, Proc. 4th International Conference on Database Programming Languages, New York City. Workshops in Computing, Springer-Verlag, 1993, pp 359–375.

    Google Scholar 

  39. Sjøberg DIK, Cutts QI, Welland R, Atkinson MP. Analysing Persistent Language Applications. In: Atkinson MP, Maier D, Benzaken V (ed) Persistent Object Systems, Tarascon 1994, Proc. 6th International Workshop on Persistent Object Systems, Tarascon, France. Workshops in Computing, Springer-Verlag, 1994, pp 235–255.

    Google Scholar 

  40. Connor RCH, Cutts QI, Kirby GNC, Moore VS, Morrison R. Unifying Interaction with Persistent Data and Program. In: Sawyer P (ed) Interfaces to Database Systems, Proc. 2nd International Workshop on Interfaces to Databases, Lancaster, 1994. Workshops in Computing, Springer-Verlag, 1994, pp 197–212.

    Google Scholar 

  41. Morrison R, Brown AL, Connor RCH et al. The Napier88 Reference Manual (Release 2.0). University of St Andrews Report CS/94/8, 1994.

    Google Scholar 

  42. Kirby GNC, Brown AL, Connor RCH et al. The Napier88 Standard Library Reference Manual (Release 2.0). University of St Andrews Report CS/94/7, 1994.

    Google Scholar 

  43. Goldberg A, Robson D. Smalltalk-80: The Language and its Implementation. Addison Wesley, Reading, Massachusetts, 1983.

    MATH  Google Scholar 

  44. PS-algol. PS-algol Reference Manual, 4th edition. Universities of Glasgow and St Andrews Report PPRR-12–88, 1988.

    Google Scholar 

  45. Morrison R. S-algol Language Reference Manual. University of St Andrews Report CS/79/1, 1979.

    Google Scholar 

  46. Atkinson MP, Morrison R. Orthogonally Persistent Object Systems. VLDB Journal 1995; 4,3:319–401.

    Article  Google Scholar 

  47. Morrison R, Brown AL, Dearie A, Atkinson MP. An Integrated Graphics Programming Environment. Computer Graphics Forum 1986; 5,2:147–157.

    Article  Google Scholar 

  48. Morrison R, Brown AL, Bailey PJ, Davie AJT, Dearie A. A Persistent Graphics Facility for the ICL PERQ Computer. Software—Practice and Experience 1986; 16,4:351–367.

    Google Scholar 

  49. Brown AL, Dearle A, Morrison R, Munro D, Rosenberg J. A Layered Persistent Architecture for Napier88. In: Rosenberg J, Keedy JL (ed) Security and Persistence, Proc. International Workshop on Security and Persistence, Bremen, 1990. Workshops in Computing, Springer-Verlag, 1990, pp 155–172.

    Google Scholar 

  50. Ruffin M. Kitlog, A Generic Logging Service. In: Proc. 11th IEEE Symposium on Reliable Distributed Systems, Houston, Texas, 1992, pp 139–146.

    Google Scholar 

  51. Scheuerl SJG, Connor RCH, Morrison R, Munro DS. The DataSafe Failure Recovery Mechanism in the Flask Architecture. In: Proc. 19th Australasian Computer Science Conference, Melbourne, Australia, 1996, pp 573–581.

    Google Scholar 

  52. Albano A, Cardelli L, Orsini R. Galileo: a Strongly Typed, Interactive Conceptual Language. ACM Transactions on Database Systems 1985; 10,2:230–260.

    Article  Google Scholar 

  53. Matthes F, Müller R, Schmidt JW. Object Stores as Servers in Persistent Programming Environments—The P-Quest Experience. ESPRIT BRA Project 3070 FIDE Report FIDE/92/48, 1992.

    Google Scholar 

  54. Rabitti F, Mainetto G, Zezula P et al. Design and Implementation of PIOS: a Physically Independent Object Server. ESPRIT BRA Project 6309 FIDE2 Report FIDE/93/70.

    Google Scholar 

  55. Davie AJT, McNally DJ. Statically Typed Applicative Persistent Language Environment (STAPLE) Reference Manual. University of St Andrews Report CS/90/14, 1990.

    Google Scholar 

  56. Garcia-Molina H. Using Semantic Knowledge for Transaction Processing in a Distributed Database. ACM Transactions on Database Systems 1983; 8,2:186–213.

    Article  Google Scholar 

  57. Atkinson MP, Bailey PJ, Chisholm KJ, Cockshott WP, Morrison R. An Approach to Persistent Programming. Computer Journal 1983; 26,4:360–365.

    MATH  Google Scholar 

  58. Atkinson MP, Bailey PJ, Chisholm KJ, Cockshott WP, Morrison R. Progress with Persistent Programming. In: Stocker PM, Atkinson MP, Gray PM (ed) Database, Role and Structure. Cambridge University Press, 1984, pp 245–310.

    Google Scholar 

  59. Atkinson MP, Buneman OP. Types and Persistence in Database Programming Languages. ACM Computing Surveys 1987; 19,2:105–190.

    Article  Google Scholar 

  60. Atkinson MP, Chisholm KJ, Cockshott WP. PS-algol: An Algol with a Persistent Heap. ACM SIGPLAN Notices 1982; 17,7:24–31.

    Article  Google Scholar 

  61. Atkinson MP, Morrison R. Procedures as Persistent Data Objects. ACM Transactions on Programming Languages and Systems 1985; 7,4:539–559.

    Article  MATH  Google Scholar 

  62. Atkinson MP, Morrison R, Pratten GD. A Persistent Information Space Architecture. In: Proc. 9th Australian Computing Science Conference, Australia, 1986.

    Google Scholar 

  63. Dearle A. Constructing Compilers in a Persistent Environment. In: Proc. 2nd International Workshop on Persistent Object Systems, Appin, Scotland, 1987.

    Google Scholar 

  64. Dearle A. On the Construction of Persistent Programming Environments. Ph.D. thesis, University of St Andrews, 1988.

    Google Scholar 

  65. Wai F. Distribution and Persistence. In: Proc. 2nd International Workshop on Persistent Object Systems, Appin, Scotland, 1987, pp 207–225.

    Google Scholar 

  66. Cooper RL. Configurable Data Modelling Systems. In: Proc. 9th International Conference on the Entity Relationship Approach, Lausanne, Switzerland, 1990, pp 35–52.

    Google Scholar 

  67. Cooper RL. On The Utilisation of Persistent Programming Environments. Ph.D. thesis, University of Glasgow, 1990.

    Google Scholar 

  68. McCarthy J, Abrahams PW, Edwards DJ, Hart TP, Levin MI. The Lisp Programmers′ Manual. M.I.T. Press, Cambridge, Massachusetts, 1962.

    Google Scholar 

  69. van Wijngaarden A, Mailloux BJ, Peck JEL, Koster CHA. Report on the Algorithmic Language ALGOL 68. Numerische Mathematik 1969; 14:79–218.

    Article  MathSciNet  MATH  Google Scholar 

  70. Strachey C. Fundamental Concepts in Programming Languages. Oxford University Press, Oxford, 1967.

    Google Scholar 

  71. Tennent RD. Language Design Methods Based on Semantic Principles. Acta Informatica 1977; 8:97–112.

    Article  MathSciNet  MATH  Google Scholar 

  72. Cardelli L, Wegner P. On Understanding Types, Data Abstraction and Polymorphism. ACM Computing Surveys 1985; 17,4:471–523.

    Article  Google Scholar 

  73. Dearle A. Environments: A flexible binding mechanism to support system evolution. In: Proc. 22nd International Conference on System Sciences, Hawaii, 1989, pp 46-55

    Google Scholar 

  74. Atkinson MP, Morrison R.Integrated Persistent Programming Systems. In: Proc. 19th International Conference on Systems Sciences, Hawaii, 1986, pp 842–854.

    Google Scholar 

  75. Mitchell JC, Piotkin GD. Abstract Types have Existential Type. ACM Transactions on Programming Languages and Systems 1988; 10,3:470–502.

    Article  Google Scholar 

  76. Albano A, Dearie A, Ghelli G et al. A Framework for Comparing Type Systems for Database Programming Languages. In: Hull R, Morrison R, Stemple D (ed) Database Programming Languages. Morgan Kaufmann, 1989, pp 170–178.

    Google Scholar 

  77. Atkinson MP, Bailey PJ, Philbrow PC, Welland RC. An Organisation for Napier88 Libraries, 2nd Edition. ESPRIT BRA Project 6309 FIDE2 Report FIDE/94/77, 1994.

    Google Scholar 

  78. Lorie RA. Physical Integrity in a Large Segmented Database. ACM Transactions on Database Systems 1977; 2,1:91–104.

    Article  Google Scholar 

  79. Rosenberg J, Henskens F, Brown AL, Morrison R, Munro D. Stability in a Persistent Store Based on a Large Virtual Memory. In: Rosenberg J, Keedy JL (ed) Security and Persistence, Proc. International Workshop on Security and Persistence, Bremen, 1990. Workshops in Computing, Springer-Verlag, 1990, pp 229–245.

    Google Scholar 

  80. Stonebraker M, Wong E, Kreps P, Held G. The Design and Implementation of INGRES. ACM Transactions on Database Systems 1976; 1,3:189–222.

    Article  Google Scholar 

  81. DaviesCT. Data Processing Spheres of Control. IBM Systems Journal 1978; 17,2:179–198.

    Google Scholar 

  82. Stemple D, Stanton RB, Sheard T et al. Type-Safe Linguistic Reflection: A Generator Technology. ESPRIT BRA Project 3070 FIDE Report FIDE/92/49, 1992.

    Google Scholar 

  83. Dearle A, Brown AL. Safe Browsing in a Strongly Typed Persistent Environment. Computer Journal 1988; 31,6:540–544.

    Article  Google Scholar 

  84. Kirby GNC, Connor RCH, Morrison R. START: A Linguistic Reflection Tool Using Hyper-Program Technology. In: Atkinson MP, Maier D, Benzaken V (ed) Persistent Object Systems, Tarascon 1994, Proc. 6th International Workshop on Persistent Object Systems, Tarascon, France. Workshops in Computing, Springer-Verlag, 1994, pp 355–373.

    Google Scholar 

  85. Kirby GNC. Persistent Programming with Strongly Typed Linguistic Reflection. In: Proc. 25th International Conference on Systems Sciences, Hawaii, 1992, pp 820–831.

    Google Scholar 

  86. Stemple D, Fegaras L, Sheard T, Socorro A. Exceeding the Limits of Polymorphism in Database Programming Languages. In: Bancilhon F, Thanos C, Tsichritzis D (ed) Lecture Notes in Computer Science 416 (EDBT ’90). Springer-Verlag, 1990, pp 269–285.

    Google Scholar 

  87. Sheard T. Automatic Generation and Use of Abstract Structure Operators. ACM Transactions on Programming Languages and Systems 1991; 19,4:531–557.

    Article  Google Scholar 

  88. Dearle A, Cutts QI, Kirby GNC. Browsing, Grazing and Nibbling Persistent Data Structures. In: Rosenberg J, Koch DM (ed) Persistent Object Systems, Proc. 3rd International Workshop on Persistent Object Systems, Newcastle, Australia 1989. Workshops in Computing, Springer-Verlag, 1990, pp 56–69.

    Google Scholar 

  89. Cooper RL, Qin Z. A Graphical Data Modelling Program With Constraint Specification and Management. In: Proc. 10th British National Conference on Databases, Aberdeen, 1992, pp 192–208.

    Google Scholar 

  90. Cooper RL, Atkinson MP, Dearie A, Abderrahmane D. Constructing Database Systems in a Persistent Environment. In: Proc. 13th International Conference on Very Large Data Bases, 1987, pp 117–125.

    Google Scholar 

  91. Fegaras L, Stemple D. Using Type Transformation in Database System Implementation. In: Kanellakis P, Schmidt JW (ed) 3rd International Conference on Database Programming Languages, Proc. 3rd International Workshop on Database Programming Languages, Nafplion, Greece. Morgan Kaufmann, 1991, pp 337–353.

    Google Scholar 

  92. Cutts QI, Connor RCH, Kirby GNC, Morrison R. An Execution Driven Approach to Code Optimisation. In: Proc. 17th Australasian Computer Science Conference, Christchurch, New Zealand, 1994, pp 83–92.

    Google Scholar 

  93. Stemple D, Sheard T, Fegaras L. Linguistic Reflection: A Bridge from Programming to Database Languages. In: Proc. 25th International Conference on Systems Sciences, Hawaii, 1992, pp 844–855.

    Google Scholar 

  94. Fegaras L, Sheard T, Stemple D. Uniform Traversal Combinators: Definition, Use and Properties. In: Proc. 11th International Conference on Automated Deduction (CADE-11), Saratoga Springs, New York, 1992. LNAI 607, pp. 148–162.

    Google Scholar 

  95. Dijkstra EW. The Structure of the T.H.E. Multiprogramming System. Communications of the ACM 1968; 11,5:341–346.

    Article  MATH  Google Scholar 

  96. Hoare CAR. Monitors: An Operating System Structuring Concept. Communications of the ACM 1974; 17,10:549–557.

    Article  MATH  Google Scholar 

  97. Dijkstra EW. Cooperating Sequential Processes. In: Genuys F (ed) Programming Languages. Academic Press, 1968, pp 43–112.

    Google Scholar 

  98. Campbell RH, Haberman AN. The Specification of Process Synchronisation by Path Expressions. In: Lecture Notes in Computer Science 16. Springer-Verlag, 1974.

    Google Scholar 

  99. Brookes SD, Hoare C, Roscoe A. A Theory of Communicating Sequential Processes. Carnegie-Mellon University Report CMU-CS-83–153, 1980.

    Google Scholar 

  100. Eswaran KP, Gray JN, Lorie RA, Traiger IL. The Notions of Consistency and Predicate Locks in a Database System. Communications of the ACM 1976; 19,11:624–633.

    Article  MathSciNet  MATH  Google Scholar 

  101. Kung HT, Robinson JT. On Optimistic Methods for Concurrency Control. ACM Transactions on Database Systems 1982; 6,2:213–226.

    Article  Google Scholar 

  102. Nodine MH, Zdonik SB. Co-operative Transaction Hierarchies: Transaction Support for Design Applications. VLDB Journal 1992; 1,1:41–80.

    Article  Google Scholar 

  103. Sutton S. A Flexible Consistency Model for Persistent Data in Software-Process Programming. In: Dearle A, Shaw GM, Zdonik SB (ed) Implementing Persistent Object Bases, Principles and Practice, Proc. 4th International Workshop on Persistent Object Systems, Martha’s Vineyard, USA. Morgan Kaufmann, 1990, pp 305–319.

    Google Scholar 

  104. Ellis CA, Gibbs SJ. Concurrency Control in Groupware Systems. In: Proc. ACM-SIGMOD International Conference on Management of Data, Portland, Oregon, 1989, pp 399–407.

    Google Scholar 

  105. Morrison R, Barter CJ, Connor RCH et al. Concurrency Control in Process Models. IOPENER 1993; 2,1:11–12.

    Google Scholar 

  106. Brown JC. A Library Explorer for the Napier88 Glasgow Libraries. M.Sc. thesis, University of Glasgow, 1993.

    Google Scholar 

  107. Waite CA, Welland RC, Printezis T et al. Glasgow Libraries for Orthogonally Persistent Systems—Philosophy, Organisation and Contents. ESPRIT BRA Project 6309 FIDE2.

    Google Scholar 

  108. Morrison R, Brown AL, Connor RCH, Dearie A. The Napier88 Reference Manual. Universities of Glasgow and St Andrews Report PPRR-77–89, 1989.

    Google Scholar 

  109. Farkas AM. ABERDEEN: A Browser allowing intERactive DEclarations and Expressions in Napier88. University of Adelaide, 1991.

    Google Scholar 

  110. Kirby GNC, Cutts QI, Connor RCH, Dearie A, Morrison R. Programmers’ Guide to the Napier88 Standard Library, Edition 2.1. University of St Andrews, 1992.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Morrison, R. et al. (2000). The Napier88 Persistent Programming Language and Environment. In: Atkinson, M.P., Welland, R. (eds) Fully Integrated Data Environments. Esprit Basic Research Series. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-59623-0_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-59623-0_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-64055-1

  • Online ISBN: 978-3-642-59623-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics