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
Journal ArticleDOI
TL;DR: The Network of Tasks (NOT) model allows adaptive node programs written in a variety of parallel languages to be connected together in an almost acyclic task graph to be regarded as a coordination language that is transparent about performance.
Abstract: The Network of Tasks (NOT) model allows adaptive node programs written in a variety of parallel languages to be connected together in an almost acyclic task graph. The main difference between NOT and other task graphs is that it is designed to make the performance of the graph predictable from knowledge of the performance of the component node programs and the visible structure of the graph. It can therefore be regarded as a coordination language that is transparent about performance. For large-scale computations that are distributed to geographically-distributed compute servers, the NOT model helps programmers to plan, assemble, schedule, and distribute their problems.

13 citations

Proceedings Article
01 Nov 1994
TL;DR: This paper considers a class of commonly encountered computations whose atural" speciica-tion is essentially sequential, and shows how algebraic properties of the operators involved can be used to transform them into divide-and-conquer programs that are considerably more eecient, both in theory and in practice, on parallel machines.
Abstract: Most of the research, to date, on optimizing program transformations for declarative languages has focused on sequential execution strategies. In this paper, we consider a class of commonly encountered computations whose atural" speciica-tion is essentially sequential, and show how algebraic properties of the operators involved can be used to transform them into divide-and-conquer programs that are considerably more eecient, both in theory and in practice, on parallel machines.

13 citations

25 May 1995
TL;DR: The structural design of 8086 C decompiling systems and the no symbolic information decompiling techniques of C language which have been implemented are presented, that is, library function pattern recognition techniques, Sub C intermediate language, symbolic execution techniques, rule based data type recovery techniques, as well as rule based ABC program transformation techniques.
Abstract: : This paper presents the structural design of 8086 C decompiling systems and the no symbolic information decompiling techniques of C language which have been implemented, that is, library function pattern recognition techniques, Sub C intermediate language, symbolic execution techniques, rule based data type recovery techniques, as well as rule based ABC program transformation techniques, and so on. The authors have applied the techniques described above on PC type micro machines to implement 8086 C language decompiling systems. The system in question is capable of taking Microsoft C (Ver 5.0) small memory type no symbolic information 8086 object code programs and translating them into C language programs with equivalent functions.

12 citations

Book ChapterDOI
03 Dec 2001
TL;DR: This work considers CRWLF, a previous proof-theoretic semantic framework able to deduce negative (failure) information from functional logic programs, and reformulates the framework to stress that set flavour, both at syntactic and semantic levels.
Abstract: Finite failure of computations plays an important role as programming construct in the logic programming paradigm, and it has been shown that this also extends to the case of the functional logic programming paradigm In particular we have considered CRWLF, a previous proof-theoretic semantic framework able to deduce negative (failure) information from functional logic programs The non-deterministic nature of functions considered in CRWLF leads naturally to set-valued semantic description of expressions Here we reformulate the framework to stress that set flavour, both at syntactic and semantic levels The given approach, for which we obtain equivalence results with respect to the previous one, increases the expressiveness for writing programs and (hopefully) clarifies the understanding of the semantics given to nondeterministic functions, since classical mathematical notions like union of sets or families of sets are used An important step in the reformulation is a useful program transformation which is proved to be correct within the framework

12 citations

Proceedings ArticleDOI
05 Sep 2016
TL;DR: In this article, a denotational semantics for an abstract effect system for a higher-order, shared-variable concurrent language is presented, including sufficient conditions for replacing sequential composition with parallel composition.
Abstract: We describe a denotational semantics for an abstract effect system for a higher-order, shared-variable concurrent language. The semantics validates general effect-based program equivalences, including sufficient conditions for replacing sequential composition with parallel composition. Effect annotations refer to abstract locations, specified by contracts, rather than physical footprints, allowing us to also show soundness of some transformations involving fine-grained concurrent data structures, such as Michael-Scott queues.We build on a trace-based semantics for first-order programs due to Brookes. By moving from concrete to abstract locations, and adding type refinements capturing possible side-effects of both expressions and their environments, we can validate many equivalences that do not hold in an unrefined model. Refined types are interpreted using a game-based logical relation over sets of traces.

12 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