Abstract
We present a virtual machine to support applicative multiprogramming — in description of concurrent, asynchronous systems such as operating systems in a functional style. The machine extends Landin's secd machine to support multiple concurrent expression evaluation, non-determinism in the form of the fair merge, and a full range of input and output devices. This allows systems programs to be written in a functional style. The secd-m machine has been implemented and a number of functional concurrent programs demonstrated.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
10. References
Abramsky, S. On Semantic Foundations for Applicative Multiprogramming, in Automata, Languages and Programming: 10th International Colloquium, ed. J. Diaz, Springer LNCS Vol 154, 1983.
Abramsky, S. Experiments, Powerdomains and Fully Abstract Models for Applicative Multiprogramming, in Foundations of Computation Theory, ed. M. Karpinski, Springer LNCS Vol 158, 1983.
Abramsky, S. Reasoning about Concurrent Systems: a Functional Approach, in Distributed Computing, ed F.Chambers and D.Duce, Academic Press, 1984.
Friedman, D and Wise, D. CONS Should not Evaluate its Arguments. in Automata, Languages and Programming. ed. S. Michaelson & R. Milner. Edinburgh University Press. 1976.
Henderson, P. and Morris, J. H. A Lazy Evaluator. Proc. Third Acm Conference on Principles of Programming Languages, 1976.
Henderson, P. Functional Programming, Application and Implementation. Academic Press, 1980
Hennessey, M. The Semantics of Call-by-Name and Call-by-Value in a Non-deterministic Environment. SIAM J. Computing, 1980.
Landin, P. J. The Mechanical Evaluation of Expressions. Computer Journal, 1964.
McCarthy, J. A Basis for a Mathematical Theory of Computation. In Studies in Logic: Computer Programming and Formal Systems. ed. Braffort & Hirschberg. North Holland 1963.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1985 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Abramsky, S., Sykes, R. (1985). Secd-m: a virtual machine for applicative programming. In: Jouannaud, JP. (eds) Functional Programming Languages and Computer Architecture. FPCA 1985. Lecture Notes in Computer Science, vol 201. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-15975-4_31
Download citation
DOI: https://doi.org/10.1007/3-540-15975-4_31
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-15975-9
Online ISBN: 978-3-540-39677-2
eBook Packages: Springer Book Archive