Abstract
A grand challenge in computing is to establish a substrate computational model that encompasses diverse forms of non-sequential computation. This paper demonstrates how a hypergraph rewriting framework nicely integrates various forms and ingredients of concurrent computation and how simple static analyses help the understanding and optimization of programs. Hypergraph rewriting treats processes and messages in a unified manner, and treats message sending and parameter passing as symmetric reaction between two entities. Specifically, we show how fine-grained strong reduction of the λ-calculus can be concisely encoded into hypergraph rewriting with a small set of primitive operations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
van der Aalst, W., Stahl, C.: Modeling Business Processes: A Petri Net-Oriented Approach. The MIT Press, Cambridge (2011)
Abadi, M., Cardelli, L., Curien, P.-L., Lévy, J.-J.: Explicit Substitutions. Journal of Functional Programming 1(4), 375–416 (1991)
Boyland, J.: Checking Interference with Fractional Permissions. In: Cousot, R. (ed.) SAS 2003. LNCS, vol. 2694, pp. 55–72. Springer, Heidelberg (2003)
Curien, P.-L., Hardin, T., Lévy, J.-J.: Confluence Properties of Weak and Strong Calculi of Explicit Substitutions. J. ACM 43(2), 362–397 (1996)
Finkel, A.: The Minimal Coverability Graph for Petri Nets. In: Rozenberg, G. (ed.) APN 1993. LNCS, vol. 674, pp. 210–243. Springer, Heidelberg (1993)
Frühwirth, T.: Constraint Handling Rules. Cambridge University Press, Cambridge (2009)
Gallo, G., Longo, G., Pallottino, S., Nguyen, S.: Directed Hypergraphs and Applications. Discrete Applied Mathematics 42(2-3), 177–201 (1993)
Lafont, Y.: Interaction Nets. In: Conference Record of the Seventeenth Annual ACM Symposium on Principles of Programming Languages (POPL 1990), pp. 95–108. ACM (1990)
Lamping, J.: An Algorithm for Optimal Lambda-Calculus Reductions. In: Conference Record of the Seventeenth Annual ACM Symposium on Principles of Programming Languages (POPL 1990), pp. 16–30. ACM (1990)
Lang, F.: Modèles de la β-réduction pour les implantations. Ph.D. Thesis, Ècole Normale Supérieure de Lyon (1998)
Mackie, I.: YALE: Yet Another Lambda Evaluator Based on Interaction Nets. In: Proc. Third ACM SIGPLAN International Conference on Functional Programming (ICFP 1998), pp. 117–128. ACM (1998)
Mackie, I.: Efficient λ-Evaluation with Interaction Nets. In: van Oostrom, V. (ed.) RTA 2004. LNCS, vol. 3091, pp. 155–169. Springer, Heidelberg (2004)
Melliès, P.-A.: Typed λ-Calculi with Explicit Substitutions Not Terminate. In: Dezani-Ciancaglini, M., Plotkin, G. (eds.) TLCA 1995. LNCS, vol. 902, pp. 328–334. Springer, Heidelberg (1995)
Milner, R.: The Space and Motion of Communicating Agents. Cambridge University Press, Cambridge (2009)
Reynier, P.-A., Servais, F.: Minimal Coverability Set for Petri Nets: Karp and Miller Algorithm with Pruning. In: Kristensen, L.M., Petrucci, L. (eds.) PETRI NETS 2011. LNCS, vol. 6709, pp. 69–88. Springer, Heidelberg (2011)
Shapiro, E.Y., Warren, D.H.D., Fuchi, K., Kowalski, R.A., Furukawa, K., Ueda, K., Kahn, K.M., Chikayama, T., Tick, E.: The Fifth Generation Project: Personal Perspectives. Comm. ACM 36(3), 46–103 (1993), (This is actually a collection of single-authored articles, and my article (pp. 65–76) was originally titled “Kernel Language in the Fifth Generation Computer Project”)
Shapiro, E., Takeuchi, A.: Object oriented programming in Concurrent Prolog. New Generation Computing 1(1), 25–48 (1983)
Sinot, F.-R.: Call-by-Name and Call-by-Value as Token-Passing Interaction Nets. In: Urzyczyn, P. (ed.) TLCA 2005. LNCS, vol. 3461, pp. 386–400. Springer, Heidelberg (2005)
Suenaga, K., Kobayashi, N.: Fractional Ownerships for Safe Memory Deallocation. In: Hu, Z. (ed.) APLAS 2009. LNCS, vol. 5904, pp. 128–143. Springer, Heidelberg (2009)
Ueda, K., Morita, M.: Moded Flat GHC and Its Message-Oriented Implementation Technique. New Generation Computing 13(1), 3–43 (1994)
Ueda, K.: Resource-Passing Concurrent Programming. In: Kobayashi, N., Babu, C. S. (eds.) TACS 2001. LNCS, vol. 2215, pp. 95–126. Springer, Heidelberg (2001)
Ueda, K., Kato, N.: LMNtal: A Language Model with Links and Membranes. In: Mauri, G., Păun, G., Jesús Pérez-Jímenez, M., Rozenberg, G., Salomaa, A. (eds.) WMC 2004. LNCS, vol. 3365, pp. 110–125. Springer, Heidelberg (2005)
Ueda, K.: LMNtal as a Hierarchical Logic Programming Language. Theoretical Computer Science 410(46), 4784–4800 (2009)
Ueda, K.: Encoding the Pure Lambda Calculus into Hierarchical Graph Rewriting. In: Voronkov, A. (ed.) RTA 2008. LNCS, vol. 5117, pp. 392–408. Springer, Heidelberg (2008)
Ueda, K., Ayano, T., Hori, T., Iwasawa, H., Ogawa, S.: Hierarchical Graph Rewriting as a Unifying Tool for Analyzing and Understanding Nondeterministic Systems. In: Leucker, M., Morgan, C. (eds.) ICTAC 2009. LNCS, vol. 5684, pp. 349–355. Springer, Heidelberg (2009)
Ueda, K., Ogawa, S.: HyperLMNtal: An Extension of a Hierarchical Graph Rewriting Model. Künstliche Intelligenz 26(1), 27–36 (2012), doi:10.1007/s13218-011-0162-3
Ueda, K.: Encoding Distributed Process Calculi into LMNtal. Electronic Notes in Theoretical Computer Science 209, 187–200 (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Ueda, K. (2014). Towards a Substrate Framework of Computation. In: Agha, G., et al. Concurrent Objects and Beyond. Lecture Notes in Computer Science, vol 8665. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-44471-9_15
Download citation
DOI: https://doi.org/10.1007/978-3-662-44471-9_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-662-44470-2
Online ISBN: 978-3-662-44471-9
eBook Packages: Computer ScienceComputer Science (R0)