Results 1 -
7 of
7
Language Independent Traversals for Program Transformation
- Universiteit Utrecht
, 2000
"... syntax representation in which variables are not leaves and extraction of variable names from expressions. strategies free-vars2(getvars, boundvars) = rec x(split(getvars <+ ![], split(collect-kids(x), boundvars <+ ![]); diff); union) Figure 15: Algorithm for collecting free variables that tak ..."
Abstract
-
Cited by 24 (7 self)
- Add to MetaCart
syntax representation in which variables are not leaves and extraction of variable names from expressions. strategies free-vars2(getvars, boundvars) = rec x(split(getvars <+ ![], split(collect-kids(x), boundvars <+ ![]); diff); union) Figure 15: Algorithm for collecting free variables that takes variables in subterms of variables into account. A variant of this algorithm taking into account binding positions can be created analogously to Figure 13 11 Section: Case Studies RENAMING BOUND VARIABLES Renaming of bound variables depends on the shape of variables and the shape of binding constructs. For binding constructs, in addition to determining what variables are bound and in which arguments they are binding, it is necessary to declare where new variables should be pasted. In order to keep track of renamings it is also required to distribute an environment along with the renaming traversal. Renaming of bound variables is used to prevent name clashes between variables, for exa...
Warm Fusion in Stratego: A Case Study in Generation of Program Transformation Systems
, 2000
"... Stratego is a domain-specic language for the specication of program transformation systems. The design of Stratego is based on the paradigm of rewriting strategies: user-denable programs in a little language of strategy operators determine where and in what order transformation rules are (automat ..."
Abstract
-
Cited by 22 (13 self)
- Add to MetaCart
Stratego is a domain-specic language for the specication of program transformation systems. The design of Stratego is based on the paradigm of rewriting strategies: user-denable programs in a little language of strategy operators determine where and in what order transformation rules are (automatically) applied to a program. The separation of rules and strategies supports modularity of specications. Stratego also provides generic features for specication of program traversals. In this paper we present a case study of Stratego as applied to a non-trivial problem in program transformation. We demonstrate the use of Stratego in eliminating intermediate data structures from (also known as deforesting) functional programs via the warm fusion algorithm of Launchbury and Sheard. This algorithm has been specied in Stratego and embedded in a fully automatic transformation system for kernel Haskell. The entire system consists of about 2600 lines of specication code, which bre...
Presentation by tree transformation
- In IEEE COMPCON '97
, 1997
"... Every interactive system requires a presentation mechanism, to show the user the data it handles. Often, the relationship between the data and its presentation is complex; further, it is often mediated by astyle mechanism, allowing the user or a designer to describe how the data should be displayed. ..."
Abstract
-
Cited by 12 (0 self)
- Add to MetaCart
Every interactive system requires a presentation mechanism, to show the user the data it handles. Often, the relationship between the data and its presentation is complex; further, it is often mediated by astyle mechanism, allowing the user or a designer to describe how the data should be displayed. It is a standing engineering challenge to develop a presentation model that is exible, handling many kinds of data and layout; powerful, giving the user extensive control over appearance; and e cient enough for interactive work. In this dissertation, we propose a model of presentation by tree transformation. Because information often has a hierarchical logical structure, trees are widely used to represent documents and other data. The layout or presentation of a document is also often modeled as a computation over a tree. But these trees are not generally identical. In other words, presentation can be seen as a mapping between trees. Casting it as a formal tree transformation o ers both expressive, compact style speci cations and e cient implementation. We present a general framework for presentation by tree transformation. It has been implemented as part of Ensemble, a software development environment and multimedia document system
The Stratego Tutorial
- Institute of Information and Computing Sciences, Universiteit
, 2000
"... Stratego is a language for the specification of transformation rules and... ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
Stratego is a language for the specification of transformation rules and...
Modeling User-Provided Whitespace and Comments in an Incremental SDE
, 1988
"... INTRODUCTION Whitespace plays several roles in programming languages: it separates other tokens, provides the programmer with a degree of control over the visual presentation of the source code, and in some languages even serves as a syntactic construct. Batch compilers and environments handle whit ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
INTRODUCTION Whitespace plays several roles in programming languages: it separates other tokens, provides the programmer with a degree of control over the visual presentation of the source code, and in some languages even serves as a syntactic construct. Batch compilers and environments handle whitespace in a simple manner, discarding it as the lexical analyzer scans each region of the text. y Incremental environments, This research has been sponsored in part by the Advanced Research Projects Agency (ARPA) under Grant MDA972-92-J-1028, and in part by NSF institutional infrastructure grant CDA-8722788. The content of this paper does not necessarily reflect the position or policy of the U. S. Government. Authors' addresses: Tim A. Wagner, Reasoning, Inc., 700 E. El Camino, Suite #300, Mountain View, CA 94040 and Susan L. Graham, 771 Soda Hall; Department of Electrical Engineering and Computer Science, Computer Science Division, University o
Using Object-Grammars for Internet Data Warehousing
- Technical report, Institut f#r Informationssysteme, Med. Universit#t L#beck
, 1997
"... The increasing amount of information available in the web demands sophisticated querying methods and knowledge discovery techniques. In this study, we introduce our model WIND for a data warehouse over a domain-specific portion of the Internet. The aim of WIND is to provide a partially materialized ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
The increasing amount of information available in the web demands sophisticated querying methods and knowledge discovery techniques. In this study, we introduce our model WIND for a data warehouse over a domain-specific portion of the Internet. The aim of WIND is to provide a partially materialized structured view onto a thematic section of the web, on which database querying can be applied and mining techniques can be developed. WIND organizes web documents into local repositories with functionalities ranging from OODBMSs to file systems. This allows for a combination of attribute and content-oriented query processing. Special interest is paid to the format specifications of documents, where the notion of format is extended to cover characteristics and constraints that hold on the subject domain. To support conversion between (semi-)structured documents and database objects, we consider a format converter generation technique based on the notion of object-grammars.

