Toggle Main Menu Toggle Search

Open Access padlockePrints

On persistent and reliable streaming in Ada

Lookup NU author(s): Professor Alexander RomanovskyORCiD


Full text for this publication is not currently held within this repository. Alternative links are provided below where available.


Saving internal program data for further use is one of the most useful ideas in programming. Developing general features to provide such data saving/restoring is a very active research area. There are two application areas for such features we believe to be crucial: system fault tolerance and data persistence. Our analysis shows that the features used in these areas have a lot in common: they are to flatten data of different types and save them in a store which can be used later on. The recent revision of the Ada language standard, Ada 95, introduces a new mechanism called streams that allows structured data to be flattened. Streams are sequences of elements comprising values from possibly different types. Ada 95 allows programmers to develop their streams following the standard abstract class interface. In this paper we show how to use the stream concept for developing new features to provide internal program data saving suitable for fault tolerance and persistence. A hierarchy of different storage types, useful in different application domains, is introduced. The standard stream interface is extended, making it possible for programmers to have a better control of the way streams work by separating storage medium control from the actual stream type using the design patterns. The convenience of this new interface is demonstrated by developing a generic package allowing any non-limited object to be written into a storage device. It can be used for providing data persistence and as a state restoration feature in schemes used for tolerating software design faults.

Publication metadata

Author(s): Kienzle J, Romanovsky A

Publication type: Article

Publication status: Published

Journal: Lecture notes in Computer Science: Reliable Software Technologies ADA-Europe 2000

Year: 2000

Volume: 1845

Pages: 82-95

Print publication date: 01/01/2000

ISSN (print): 0302-9743

ISSN (electronic):

Publisher: Springer

URL: http://dx.doi.oprg/10.1007/10722060_10

DOI: 10.1007/10722060_10


Altmetrics provided by Altmetric