Extending the Sparkle Core language with object abstraction

  • Máté Tejfel
  • Zoltán Horváth
  • Tamás Kozsik


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.


Download data is not yet available.
How to Cite
Tejfel, M., Horváth, Z., & Kozsik, T. (2005). Extending the Sparkle Core language with object abstraction. Acta Cybernetica, 17(2), 419-445. Retrieved from https://cyber.bibl.u-szeged.hu/index.php/actcybern/article/view/3675
Regular articles