A Parallel Abstract Machine for the RPC Calculus
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.
KeywordsOperational Semantic Parallel Execution Derivation Tree Abstract Machine Reduction Sequence
Unable to display preview. Download preview PDF.
- 1.Amadio, R.M., Curien, P.L.: Domains and Lambda-Calculi. Cambridge University Press (1998)Google Scholar
- 3.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)Google Scholar
- 5.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)Google Scholar
- 7.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)Google Scholar
- 8.Nishizaki, S.: Polymorphic Environment Calculus and Its Type Inference Algorithm. Higher-Order and Symbolic Computation 13(3) (2000)Google Scholar