An Action Environment

Some basic programming constructs (e.g., conditional statements) are found in many different programming languages, and can often be included without change when a new language is designed. When writing a semantic description of a language, however, it is usually not possible to reuse parts of previous descriptions without change.This paper introduces a new formalism, ASDF, which has been designed specifically for giving reusable action semantic descriptions of individual language constructs. An initial case study in the use of ASDF has already provided reusable descriptions of all the basic constructs underlying Core ML.The paper also describes the Action Environment, a new environment supporting use and validation of ASDF descriptions. The Action Environment has been implemented on top of the ASF+SDF Meta-Environment, exploiting recent advances in techniques for integration of different formalisms, and inheriting all the main features of the Meta-Environment.

[1]  Alfonso Pierantonio,et al.  Enhanced Control Flow Graphs in Montages , 1999, Ershov Memorial Conference.

[2]  Arie van Deursen,et al.  Language Prototyping: An Algebraic Specification Approach , 1996, AMAST Series in Computing.

[3]  Philipp Gerhardy,et al.  Strongly uniform bounds from semi-constructive proofs , 2004, Ann. Pure Appl. Log..

[4]  Peter D. Mosses,et al.  An Action Environment , 2006, Sci. Comput. Program..

[5]  P. Klint,et al.  Efficient annotated terms , 2000 .

[6]  Arie van Deursen,et al.  The Asf+Sdf Meta-Environment: a Component-Based Language Development Environment , 2001, LDTA@ETAPS.

[7]  Jan A. Bergstra,et al.  The Discrete Time TOOLBUS - A Software Coordination Architecture , 1998, Science of Computer Programming.

[8]  Peter D. Mosses A Modular SOS for Action Notation , 1999 .

[9]  Peter D. Mosses,et al.  Constructive Action Semantics for Core ML , 2005, IEE Proc. Softw..

[10]  Teodor Rus,et al.  AMAST series in computing , 1993 .

[11]  Peter D. Mosses Action Semantics and ASF+SDF: System Demonstration , 2002, Electron. Notes Theor. Comput. Sci..

[12]  Philipp Gerhardy A Quantitative Version of Kirk's Fixed Point Theorem for Asymptotic Contractions , 2004 .

[13]  Peter D. Mosses,et al.  Composing programming languages by combining action-semantics modules , 2001, Sci. Comput. Program..

[14]  Paul Klint,et al.  Semantics of programming languages: a tool-oriented approach , 1999, SIGP.

[15]  Arie van Deursen,et al.  The ASF+SDF Meta-environment: A Component-Based Language Development Environment , 2001 .

[16]  Olivier Danvy,et al.  A functional correspondence between monadic evaluators and abstract machines for languages with computational effects , 2003, Theor. Comput. Sci..

[17]  Olivier Danvy,et al.  An Operational Foundation for Delimited Continuations in the CPS Hierarchy , 2005, Log. Methods Comput. Sci..

[18]  Christian Kirkegaard,et al.  A Runtime System for XML Transformations in Java , 2004, XSym.

[19]  Pierre-Etienne Moreau,et al.  Environments for Term Rewriting Engines for Free! , 2003, RTA.

[20]  Jørgen Iversen Type Checking Semantic Functions in ASDF , 2004 .

[21]  Peter D. Mosses Action Semantics , 1986, ADT.

[22]  Paul Klint,et al.  The syntax definition formalism SDF—reference manual— , 1989, SIGP.

[23]  Anders Møller,et al.  The Design Space of Type Checkers for XML Transformation Languages , 2004, ICDT.

[24]  Paul Hudak,et al.  Modular Denotational Semantics for Compiler Construction , 1996, ESOP.

[25]  Martin Wirsing,et al.  Algebraic Specification , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.