Abstract
This paper introduces the real-time programming language RUTH which is a functional language based on the lazy language LispKit LISP [8]. RUTH is a semantically pure functional language in which the concept of a Process is encapsulated by the more general concept of a function. Communication between Processes is modelled by streams of timestamped values. RUTH programs take as input a tree of integers which is lazily evaluated as the program executes to produce node values representing the current time. Taking real-time information as an input data structure allows RUTH programs to define and react to real-time events without loosing referential transparency and allows us to define a formal semantics without the complication of including timing information.
Preview
Unable to display preview. Download preview PDF.
References
"Automatic Control Systems Programming using a Real Time Declarative Language" J.L. Bergarand, P. Caspi, N. Halhwachs and J.A. Plaice From: IFAC/IFIP Symposium on Software for Computer Control {SOCOCO 86} Graz (Austria) May 1986
"Applicative Real-Time Programming" M. Broy Proceedings IFIP 1983. North-Holland Information Processing 83.
"Nondeterminism with referential transparency in Functional Programming Languages." F.W. Burton Department of Electrical Engineering and Computer Science — University of Colorado at Denver.
"The Semantics of Lazy {and Industrious} Evaluation" R. Cartwright and J. Donahue Proceedings 1982 Symposium on Lisp and Functional Programming, Pittsburg USA
"Arctic: A Functional Language for Real-Time Control" R.B. Dannenberg Proceedings 1984 Symposium on Lisp and Functional Programming, Austin, Texas USA.
"Program Transformation" J. Darlington In: Functional Programming and its Applications Eds. J. Darlington, P. Henderson and D.A. Turner Cambridge University Press 1982
"Toward a Real-Time Dataflow Language" A.A. Faustini and E.B. Lewis IEEE Software. January 1986
"The LispKit Manual" P. Henderson, G.A. Jones and S.B. Jones Oxford University Computing Laboratory, Programming Research Group Monograph 32
"PFL: A Functional Language for Parallel Programming" S. Holmstrom Proceedings Declarative Programming Workshop University College London 11–13th April 1983
"OCCAM Programming Manual" Inmos Ltd. Prentice-Hall International Series in Computer Science 1984
"Abstract Machine Support for Purely Functional Operating Systems" S.B. Jones University of Stirling Department of Computing Science, T.R.15
"A Range of Operating Systems Written in A Purely Functional Style" S.B. Jones University of Stirling Department of Computing Science, T.R.16
"On Real-Time Distributed Computing" G. Le Lann Proceedings IFIP 1983. North-Holland Information Processing 83.
"Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory" J. Stoy MIT Press 1977
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1987 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Harrison, D. (1987). "Ruth: A functional language for real-time programming". In: de Bakker, J.W., Nijman, A.J., Treleaven, P.C. (eds) PARLE Parallel Architectures and Languages Europe. PARLE 1987. Lecture Notes in Computer Science, vol 259. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-17945-3_17
Download citation
DOI: https://doi.org/10.1007/3-540-17945-3_17
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-17945-0
Online ISBN: 978-3-540-47181-3
eBook Packages: Springer Book Archive