Next: Informal Semantics of ``accesses''
Up: The Basic Structure of
Previous: XASM Components
In order to provide a high degree of flexibility in interconnecting
XASM-components, it is possible to define local derived functions using
so-called ``with'' definitions. For example, a asm
A wants to use the check_blockvar as introduced above, but
A doesn't declare a function named ``DeclTable'' as it is
required by the check_blockvar asm. However, the
DeclTable must be somehow expressible using existing functions in
A. The ``with''-statement can be used to provide the called
asm with the necessary function declaration, as illustrated in the
In a similar way, accessed sub-asms can be specified in the context of
a ``with'' statement.
Using XASM components together with this kind of gluing mechanism
provides a powerful means to structure large specifications using
smaller and reusable units.