Abstract
Research on the semantics of programming languages has yielded a wide array of notations and methodologies for defining languages and language features. An important feature many of these notations and methodologies lack is modularity: the ability to define a language feature once, insulating it from unrelated changes in other parts of the language, and allowing it to be reused in other language definitions. This paper introduces ongoing work on modularity features in K, an algebraic, rewriting logic based formalism for defining language semantics.
Supported in part by NSF grants CCF-0448501, CNS-0509321 and CNS-0720512, by NASA contract NNL08AA23C, by the Microsoft/Intel funded Universal Parallel Computing Research Center at UIUC, and by several Microsoft gifts.
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
Anlauff, M., Chakraborty, S., Kutter, P.W., Pierantonio, A., Thiele, L.: Generating an action notation environment from Montages descriptions. International Journal on Software Tools for Technology Transfer 3(4), 431–455 (2001)
Balland, E., Brauner, P., Kopetz, R., Moreau, P.-E., Reilles, A.: Tom: Piggybacking Rewriting on Java. In: Baader, F. (ed.) RTA 2007. LNCS, vol. 4533, pp. 36–47. Springer, Heidelberg (2007)
Borovanský, P., Kirchner, C., Kirchner, H., Moreau, P.-E., Ringeissen, C.: An overview of ELAN. In: Proceedings of WRLA 1998. ENTCS, vol. 15 (1998)
Braga, C., Meseguer, J.: Modular Rewriting Semantics in Practice. In: Proceedings of WRLA 2004. ENTCS, vol. 117, pp. 393–416. Elsevier, Amsterdam (2005)
Chalub, F., Braga, C.: Maude MSOS Tool. In: Proceedings of WRLA 2006. ENTCS, vol. 176, pp. 133–146. Elsevier, Amsterdam (2007)
Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.L. (eds.): All About Maude - A High-Performance Logical Framework, How to Specify, Program and Verify Systems in Rewriting Logic. LNCS, vol. 4350. Springer, Heidelberg (2007)
de Braga, C.O., Haeusler, E.H., Meseguer, J., Mosses, P.D.: Maude Action Tool: Using Reflection to Map Action Semantics to Rewriting Logic. In: Rus, T. (ed.) AMAST 2000. LNCS, vol. 1816, pp. 407–421. Springer, Heidelberg (2000)
Doh, K.-G., Mosses, P.D.: Composing programming languages by combining action-semantics modules. Science of Computer Programming 47(1), 3–36 (2003)
Espinosa, D.A.: Semantic Lego. PhD thesis (1995)
Berry, G., Boudol, G.: The Chemical Abstract Machine. In: Proceedings of POPL 1990, pp. 81–94. ACM Press, New York (1990)
Goguen, J., Winkler, T., Meseguer, J., Futatsugi, K., Jouannaud, J.-P.: Introducing OBJ. In: Software Engineering with OBJ: algebraic specification in action. Kluwer, Dordrecht (2000)
Gurevich, Y.: Evolving Algebras 1993: Lipari Guide. In: Specification and Validation Methods, pp. 9–36. Oxford University Press, Oxford (1995)
Hidalgo-Herrero, M., Verdejo, A., Ortega-Mallén, Y.: Using Maude and Its Strategies for Defining a Framework for Analyzing Eden Semantics. In: Proceedings of WRS 2006. ENTCS, vol. 174, pp. 119–137. Elsevier, Amsterdam (2007)
Huggins, J.: ASM-Based Programming Language Definitions, http://www.eecs.umich.edu/gasm/proglang.html
Iversen, J., Mosses, P.D.: Constructive Action Semantics for Core ML. IEE Proceedings - Software 152(2), 79–98 (2005)
Kutter, P.W., Pierantonio, A.: Montages Specifications of Realistic Programming Languages. Journal of Universal Computer Science 3(5), 416–442 (1997)
Liang, S., Hudak, P., Jones, M.P.: Monad Transformers and Modular Interpreters. In: Proceedings of POPL 1995, pp. 333–343. ACM Press, New York (1995)
Martí-Oliet, N., Meseguer, J.: Rewriting logic: roadmap and bibliography. Theoretical Computer Science 285, 121–154 (2002)
Meseguer, J.: Conditional rewriting logic as a unified model of concurrency. Theoretical Computer Science 96(1), 73–155 (1992)
Meseguer, J., de Braga, C.O.: Modular Rewriting Semantics of Programming Languages. In: Rattray, C., Maharaj, S., Shankland, C. (eds.) AMAST 2004. LNCS, vol. 3116, pp. 364–378. Springer, Heidelberg (2004)
Meseguer, J., Roşu, G.: Rewriting Logic Semantics: From Language Specifications to Formal Analysis Tools. In: Basin, D., Rusinowitch, M. (eds.) IJCAR 2004. LNCS (LNAI), vol. 3097, pp. 1–44. Springer, Heidelberg (2004)
Meseguer, J., Roşu, G.: The rewriting logic semantics project. Theoretical Computer Science 373(3), 213–237 (2007); Also appeared in SOS 2005, ENTCS. vol 156(1), pp. 27–56 (2006)
Moggi, E.: An abstract view of programming languages. Technical Report ECS-LFCS-90-113, Edinburgh University, Department of Computer Science (June 1989)
Mosses, P.D.: Action Semantics. Cambridge Tracts in Theoretical Computer Science, vol. 26. Cambridge University Press, Cambridge (1992)
Mosses, P.D.: Foundations of Modular SOS. In: Kutyłowski, M., Wierzbicki, T., Pacholski, L. (eds.) MFCS 1999. LNCS, vol. 1672, pp. 70–80. Springer, Heidelberg (1999)
Mosses, P.D.: Pragmatics of Modular SOS. In: Kirchner, H., Ringeissen, C. (eds.) AMAST 2002. LNCS, vol. 2422, pp. 21–40. Springer, Heidelberg (2002)
Mosses, P.D.: A Constructive Approach to Language Definition. Journal of Universal Computer Science 11(7), 1117–1134 (2005)
Mosses, P.D., New, M.J.: Implicit Propagation in Structural Operational Semantics. In: SOS 2008. Final version to appear in ENTCS (2008)
Plotkin, G.D.: A Structural Approach to Operational Semantics. Journal of Logic and Algebraic Programming 60-61, 17–139 (2004)
Roşu, G.: K: A Rewriting-Based Framework for Computations – Preliminary version. Technical Report Department of Computer Science UIUCDCS-R-2007-2926 and College of Engineering UILU-ENG-2007-1827, University of Illinois at Urbana-Champaign (2007)
Stärk, R., Schmid, J., Börger, E.: JavaTMand the JavaTMVirtual Machine: Definition, Verification, Validation. Springer, Heidelberg (2001)
Strachey, C., Wadsworth, C.P.: Continuations: A Mathematical Semantics for Handling Full Jumps. Higher-Order and Symbolic Computation 13(1/2), 135–152 (2000)
van den Brand, M., Iversen, J., Mosses, P.D.: An Action Environment. Science of Computer Programming 61(3), 245–264 (2006)
van den Brand, M.G.J., Heering, J., Klint, P., Olivier, P.A.: Compiling language definitions: the ASF+SDF compiler. ACM TOPLAS 24(4), 334–368 (2002)
van Deursen, A., Mosses, P.D.: ASD: The Action Semantic Description Tools. In: Nivat, M., Wirsing, M. (eds.) AMAST 1996. LNCS, vol. 1101, pp. 579–582. Springer, Heidelberg (1996)
Wadler, P.: The Essence of Functional Programming. In: Proceedings of POPL 1992, pp. 1–14. ACM Press, New York (1992)
Wansbrough, K., Hamer, J.: A Modular Monadic Action Semantics. In: Proceedings of DSL 1997. USENIX (1997)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hills, M., Roşu, G. (2009). Towards a Module System for K. In: Corradini, A., Montanari, U. (eds) Recent Trends in Algebraic Development Techniques. WADT 2008. Lecture Notes in Computer Science, vol 5486. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-03429-9_13
Download citation
DOI: https://doi.org/10.1007/978-3-642-03429-9_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-03428-2
Online ISBN: 978-3-642-03429-9
eBook Packages: Computer ScienceComputer Science (R0)