Next: Overview of XASM
Up: XASM- An Extensible, Component-Based
Previous: XASM- An Extensible, Component-Based
The Abstract State Machine approach has been and is successfully used
to model a large number of case studies including industry-relevant
ones. The simplicity of the basic data and execution model of ASMs
makes them perfectly suitable as the basis for a language that on the
one hand can be used as specification language and on the other hand
as a high-level programming language. In this paper, the XASM ( Extensible ASM)language is presented which aims at providing
support for using ASMs as a programming language for producing
efficient and reusable programs. There exists a number of other ASM
implementations which all implement most of the ASM constructs as
defined in the Lipari-Guide [15]. While the realization
of the ASM constructs can be seen as the core functionality which must
be present in each ASM support system, the difference of an ASM system
compared to all others can be characterized by
- its efficiency,
- the functionality of its support environment,
- its rule abstraction concept, and
- its interoperability with other languages and systems.
For example, all ASM implementations - including XASM- define some
macro structures on top of the core ASM language in order to provide
some kind of rule abstraction concept. These additional features are
indispensable for managing large formalizations. In the ASM-Workbench
[12], for instance, the a special ``Rule'' construct
is introduced being used to assemble ASM specifications from
smaller pieces.
Concerning these features, XASM combines the advantages of using a
formally defined method with the features of a full-scale,
component-based programming language and its support environment.
The paper is organized as follows: In Section 2 an
overview of XASM is given. Section 3 introduces
the component-based module concept of XASM, in Section
4 the external language interface of XASM is
described. In Section 6 the possibility to
specify the syntax of input languages using context-free grammar
definitions is presented, which is followed by the description of
non-standard language constructs defined in XASM in Section
5. Section 7 sketches the
support environment of XASM; Section 8 contains
concluding remarks and points out future work.
Next: Overview of XASM
Up: XASM- An Extensible, Component-Based
Previous: XASM- An Extensible, Component-Based
Philipp Kutter
2002-03-18