Abstract
Cooper and Wadler introduced the RPC calculus, which is obtained by incorporating a mechanism for remote procedure calls (RPC) into the lambda calculus. The location where a caller’s code is executed is designated in a lambda abstraction in the RPC calculus. Nishizaki et al. proposed a simplified abstract machine for the lambda calculus, known as a Simple Abstract Machine (SAM). The configuration of an SECD machine is a quadruple of data sequences: Stack, Environment, Code, and Dump. In contrast, the SAM configuration is a double of data sequences: Stack and Code. In this paper, we introduce a SAM-based abstract machine for the RPC calculus, called a Location-aware Simple Abstract Machine (LSAM). This machine makes it possible to model parallelism more clearly. We provide a translation of the RPC calculus into LSAM, and prove a correctness theorem for the translation. We then show that the translation can be extended to allow parallel execution in LSAM.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Amadio, R.M., Curien, P.L.: Domains and Lambda-Calculi. Cambridge University Press (1998)
Birrell, A.D., Nelson, B.J.: Implementing remote procedure calls. ACM Transactions on Computer Systems 2(1), 39–59 (1984)
Cooper, E., Wadler, P.: The RPC calculus. In: Proceedings of the 11th ACM SIGPLAN Conference on Principles and Practice of Declarative Programming, PPDP 2009, pp. 231–242 (2009)
Cousineau, G., Curien, P.L., Mauny, M.: The categorical abstract machine. Science of Computer Programming 8(2), 173–202 (1987)
Ganz, S.E., Friedman, D.P., Wand, M.: Trampolined style. In: Proceedings of the 4th ACM SIGPLAN International Conference on Functional Programming, ICFP 1999, pp. 18–27 (1999)
Landin, P.J.: The mechanical evaluation of expressions. The Computer Journal 6(4), 308–320 (1964)
Narita, K., Nishizaki, S., Mizuno, T.: A Simple Abstract Machine for Functional First-class Continuations. In: Proceedings of International Symposium on Communications and Information Technologies 2010, pp. 111–114. IEEE (2010)
Nishizaki, S.: Polymorphic Environment Calculus and Its Type Inference Algorithm. Higher-Order and Symbolic Computation 13(3) (2000)
Nishizaki, S.: Programs with Continuations and Linear Logic. Science of Computer Programming 21(2), 165–190 (1993)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Narita, K., Nishizaki, Sy. (2011). A Parallel Abstract Machine for the RPC Calculus. In: Abd Manaf, A., Sahibuddin, S., Ahmad, R., Mohd Daud, S., El-Qawasmeh, E. (eds) Informatics Engineering and Information Science. ICIEIS 2011. Communications in Computer and Information Science, vol 253. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25462-8_28
Download citation
DOI: https://doi.org/10.1007/978-3-642-25462-8_28
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-25461-1
Online ISBN: 978-3-642-25462-8
eBook Packages: Computer ScienceComputer Science (R0)