In recent years, component-based development has evolved to one of the key technologies in software engineering, because it provides a promising way to deal with large scale software developments. Due to this, the realization of component interactions has become an important task while implementing a system being assembled from (existing) components. Scripting languages, like Perl, Tcl, Unix-Shell, are often used for implementing this so-called glue code, because they provide a flexible way to process string-based input, the most common data structures used for component interactions. However, often it turns out that the algorithms of the component interactions are too sophisticated to be adequately expressed in this kind of languages. In this paper, we propose the use of language technology for that purpose: the strings passed between the components are treated as sentences in specialized component interaction languages (CIL). The syntax of such a language defines the input format of the components to be interconnected, and the semantics represents the functionality of the glue code. The appropriateness of this approach depends on the methodology and support functionality available for designing these languages. We report on the positive experiences using Montages as methodology. We will also describe the support functionality of the Gem-Mex tool containing its graphical animation and debugging facilities, which can be used as vehicle for the comprehension of the interplay between the components of the overall system.
The specification of all aspects of a programming language requires adequate formal models and tool support. Montages specifications combine graphical and textual elements to yield language descriptions similar in structure, length, and complexity to those in common language manuals, but with a formal semantics. A broad range of people involved in programming language design and use may find it convenient to use Montages in combination with the tool GEM-MEX. It allows the automatic generation of high-quality documents, type-checkers, interpreters and symbolic debuggers.
In the present paper, a methodology is presented which enables the implementation of the Action Notation formalism based on a formal and modular speci cation. As a result, an interpreter and debugger is automatically generated which allows the visualization of an Action Notation program execution and the inspection of all semantic identities in terms of the given formal speci cation. These results are based on several new concepts. At rst, a formal description of Action Notation is provided by means of Montages. Montages are a semi-visual formalism for the speci cation of syntax and semantics of programming languages. Moreover, the structuring of Action Notation via facets is re ned and used to de ne a new speci cation architecture that ensures the required modularity. The tool support for Montages Gem-Mex automatically generates a prototypical implementation from the language's Montages speci cation.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.