scispace - formally typeset
Search or ask a question
Topic

Program transformation

About: Program transformation is a research topic. Over the lifetime, 2468 publications have been published within this topic receiving 73415 citations.


Papers
More filters
BookDOI
20 Nov 2013
TL;DR: Parallel Algorithm Derivation and Program Transformation stimulates the investigation of formal ways to overcome problems of parallel computation, with respect to both software development and algorithm design and represents perspectives from two different communities: transformational programming and parallel algorithm design.
Abstract: Transformational programming and parallel computation are two emerging fields that may ultimately depend on each other for success. Perhaps because ad hoc programming on sequential machines is so straightforward, sequential programming methodology has had little impact outside the academic community, and transformational methodology has had little impact at all. However, because ad hoc programming for parallel machines is so hard, and because progress in software construction has lagged behind architectural advances for such machines, there is a much greater need to develop parallel programming and transformational methodologies. Parallel Algorithm Derivation and Program Transformation stimulates the investigation of formal ways to overcome problems of parallel computation, with respect to both software development and algorithm design. It represents perspectives from two different communities: transformational programming and parallel algorithm design, to discuss programming, transformational, and compiler methodologies for parallel architectures, and algorithmic paradigms, techniques, and tools for parallel machine models. Parallel Algorithm Derivation and Program Transformation is an excellent reference for graduate students and researchers in parallel programming and transformational methodology. Each chapter contains a few initial sections in the style of a first-year, graduate textbook with many illustrative examples. The book may also be used as the text for a graduate seminar course or as a reference book for courses in software engineering, parallel programming or formal methods in program development.

27 citations

Book ChapterDOI
09 Jul 2000
TL;DR: This paper shows how concepts from the area of graph transformation can be applied to provide a conceptual and formal framework for describing the structural and behavioral aspects of distributed software systems.
Abstract: Distributed software systems are typically built according to a three layer conceptual structure: Objects on the lowest layer are clustered by components on the second layer, which themselves are located at nodes of a computer network on the third layer. Orthogonal to these three layers, an instance level and a type or schema level are distinguished when modeling these systems. Accordingly, the changes a system experiences during its lifetime can be classified as the system's dynamic behavior on the instance level and as the evolution of the system on the schema level. This paper shows how concepts from the area of graph transformation can be applied to provide a conceptual and formal framework for describing the structural and behavioral aspects of such systems.

27 citations

Patent
13 Jan 1992
TL;DR: In this article, a plurality of program components, which do not have matching interfaces, are combined together automatically to generate a larger new program, where a mediating program generator detects a mismatch of the interface specifications between at least two program components which are being combined and generates mediating programs in accordance with the program transformation rule and the data type transformation rule, which mediates program enables the two programs and their data to communicate.
Abstract: A plurality of program components, which do not have matching interfaces, are combined together automatically to generate a larger new program. An interface specifications' database registers the interface specifications corresponding to each of the program components. A program transformation rule memory stores transformation rules for controlling the reconciliation of the non-matching interface specifications of the program components. A data type memory stores data type transformation rules for reconciling non matching data specifications. A mediating program generator detects a mismatch of the interface specifications between at least two program components which are being combined and generates a mediating program in accordance with the program transformation rule and the data type transformation rule which mediating program enables the two programs and their data to communicate. A components composer generates the larger new program from the program components in the program components' database and the generated mediating program.

27 citations

Journal ArticleDOI
TL;DR: A strategic combinator called transient and a strategic constant called skip are introduced in the context of a higher-order strategic framework that allows the manipulation of data to be expressed directly in strategic terms.

27 citations

Journal Article
TL;DR: This talk shows that this technique, augmented by a preliminary abstract interpretation, can yield safe, efficient execution of programs in an unsafe language, and a change in program style, from one list representation to another.
Abstract: Earlier work has shown that partial evaluation of a self-interpreter with respect to an input program can be used to effect program transformation. This talk shows that this technique, augmented by a preliminary abstract interpretation, can yield, among many other transformations: . Safe, efficient execution of programs in an unsafe language, and . A change in program style, from one list representation to another Further, partial evaluation can be viewed as an on-line polyvariant abstract interpretation, augmented by code generation. This view generalizes conventional projection-based partial evaluation in the direction of Turchin's supercompilation.

27 citations


Network Information
Related Topics (5)
Model checking
16.9K papers, 451.6K citations
92% related
Compiler
26.3K papers, 578.5K citations
88% related
Programming paradigm
18.7K papers, 467.9K citations
87% related
Executable
24K papers, 391.1K citations
86% related
Component-based software engineering
24.2K papers, 461.9K citations
86% related
Performance
Metrics
No. of papers in the topic in previous years
YearPapers
20234
202218
202126
202042
201956
201836