Extending the Sparkle Core language with object abstraction

Sparkle is a theorem prover specially constructed for the functional programming language Clean. In a pure functional language like Clean the variables represent constant values; variables do not change in time. Hence it seems that temporality has no meaning in functional programs. However, in certa...

Full description

Saved in:
Bibliographic Details
Published inActa cybernetica (Szeged) Vol. 17; no. 2; p. 419
Main Authors Máté Tejfel, Horváth, Zoltán, Kozsik, Tamás
Format Journal Article
LanguageEnglish
Published Szeged Laszlo Nyul 01.01.2005
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Sparkle is a theorem prover specially constructed for the functional programming language Clean. In a pure functional language like Clean the variables represent constant values; variables do not change in time. Hence it seems that temporality has no meaning in functional programs. However, in certain cases (e.g. in interactive or distributed programs, or in ones that use I/O), a series of values computed from one another can be considered as different states of the same "abstract object". For this abstract object temporal properties can be proved. This paper presents a method to describe abstract objects and invariant properties in an extended version of the Sparkle Core language. The creation of such descriptions will be supported by a refactoring tool. The descriptions are completely machine processible, and provide a way to automatize the proof of temporal properties of Clean programs with the extended Sparkle system.
ISSN:0324-721X