Two models for integrating persistence and lazy functional languages

  • Authors:
  • David J. McNally;Antony J. T. Davie

  • Affiliations:
  • Depatunent of Computational Science, University of St Andrews, Scotland;Depatunent of Computational Science, University of St Andrews, Scotland

  • Venue:
  • ACM SIGPLAN Notices
  • Year:
  • 1991

Quantified Score

Hi-index 0.00

Visualization

Abstract

A new programming system --- STAPLE (Statically Typed Applicative Persistent Language Environment) --- which integrates a lazy functional programming language and a persistent store is described. The motivation for introducing orthogonal persistence into a functional setting is given. Two models for achieving this integration are then described together with a discussion of the way laziness interacts with persistence and the benefits resulting from this interaction. In the first model, a system of persistent modules allows the programmer to create persistent values by naming them in a module. In the second model, a combination of stream I/O and a dynamic type allows functional programs to manipulate values already in the persistent store and to allow dynamically created values to become persistent.