scispace - formally typeset
Search or ask a question
Topic

Source transformation

About: Source transformation is a research topic. Over the lifetime, 103 publications have been published within this topic receiving 2244 citations.


Papers
More filters
ReportDOI
13 May 2004
TL;DR: The set of algorithms and basic functionality currently implemented in OpenAD are described and the necessary steps to add a new algorithm to the framework are explained.
Abstract: Research in automatic differentiation has led to a number of tools that implement various approaches and algorithms for the most important programming languages. While all these tools have the same mathematical underpinnings, the actual implementations have little in common and mostly are specialized for a particular programming language, compiler internal representation, or purpose. This specialization does not promote an open test bed for experimentation with new algorithms that arise from exploiting structural properties of numerical codes in a source transformation context. OpenAD is being designed to fill this need by providing a framework that allows for relative ease in the implementation of algorithms that operate on a representation of the numerical kernel of a program. Language independence is achieved by using an intermediate XML format and the abstraction of common compiler analyses in Open-Analysis. The intermediate format is mapped to concrete programming languages via two front/back end combinations. The design allows for reuse and combination of already implemented algorithms. We describe the set of algorithms and basic functionality currently implemented in OpenAD and explain the necessary steps to add a new algorithm to the framework.

16 citations

Book ChapterDOI
24 Mar 2009
TL;DR: This paper considers TXL as a model transformation tool, especially, for model-to-model transformations, and presents an approach for applying TXL with automatic generation of TXL grammars from meta-models.
Abstract: As one of the MDA's main principles, model transformation has led to the specification of QVT and a large number of model transformation tools. TXL is a generic source transformation tool that also possesses some very important model transformation properties, such as scalability and efficiency. In this paper, we consider TXL as a model transformation tool, especially, for model-to-model transformations. We first present an approach for applying TXL as a model transformation tool. An interesting feature of the approach is the automatic generation of TXL grammars from meta-models. Then, practical applications of model transformation via TXL that follow our approach are given. We conclude the paper with a preliminary evaluation of using TXL as a model transformation tool.

9 citations

Proceedings ArticleDOI
01 Jan 2012
TL;DR: An extension of Constraint Handling Rules (CHR) with dierent visualization features to visualize the execution of rules applied on a list of constraints and to represent some of the CHR constraints as objects and visualize the effect of CHR rules on them.
Abstract: In this paper, we propose an extension of Constraint Handling Rules (CHR) with dierent visualization features. One feature is to visualize the execution of rules applied on a list of constraints. The second feature is to represent some of the CHR constraints as objects and visualize the effect of CHR rules on them. To avoid changing the compiler, our implementation is based on source-to-source transformation. 1998 ACM Subject Classification I.2.2 Automatic Programming, D.3.2 Language Classifications

9 citations

Journal ArticleDOI
TL;DR: It is argued that ADiJaC’s features and performance are comparable to those of similar mature tools for other programming languages such as C/C++ or Fortran.
Abstract: This work presents the current design and implementation of ADiJaC, an automatic differentiation tool for Java classfiles. ADiJaC uses source transformation to generate derivative codes in both the forward and the reverse modes of automatic differentiation. We describe the overall architecture of the tool and present various details and examples for each of the two modes of differentiation. We emphasize the enhancements that have been made over previous versions of ADiJaC and illustrate their influence on the generality of the tool and on the performance of the generated derivative codes. The ADiJaC tool has been used to generate derivatives for a variety of problems, including real-world applications. We evaluate the performance of such codes and compare it to derivatives generated by Tapenade, a well-established automatic differentiation tool for Fortran and C/C++. Additionally, we present a more detailed performance analysis of a real-world application. Apart from being the only general-purpose automatic differentiation tool for Java bytecode, we argue that ADiJaC’s features and performance are comparable to those of similar mature tools for other programming languages such as C/C++ or Fortran.

9 citations

Network Information
Related Topics (5)
Programming paradigm
18.7K papers, 467.9K citations
79% related
Compiler
26.3K papers, 578.5K citations
79% related
Component-based software engineering
24.2K papers, 461.9K citations
77% related
Software system
50.7K papers, 935K citations
77% related
Software development
73.8K papers, 1.4M citations
77% related
Performance
Metrics
No. of papers in the topic in previous years
YearPapers
20213
20194
20186
20175
201613
20159