Results 1 -
5 of
5
Transformation of Documents and Schemas by Patterns and Contextual Conditions
- Proceedings of the Third International Workshop on Principles of Document Processing (PODP 96
, 1997
"... . On the basis of the tree-regular language theory,we study document transformation and schema transformation. A document is represented by a tree t, and a schema is represented byatree-regular language L. Document transformation is de#ned as a composition of a marking function m P C and a lin ..."
Abstract
-
Cited by 34 (4 self)
- Add to MetaCart
. On the basis of the tree-regular language theory,we study document transformation and schema transformation. A document is represented by a tree t, and a schema is represented byatree-regular language L. Document transformation is de#ned as a composition of a marking function m P C and a linear tree homomorphism h, where P is a pattern and C is a contextual condition. Pattern P is a tree-regular language, and contextual condition C is a pointed tree representation. Marking function m P C marks a node if the subtree rooted by this node matches P and the envelope #the rest of the tree# satis#es C. Linear tree homomorphism h then rewrites the tree, for example, by deleting or renaming marked nodes. Schema transformation is de#ned by naturally extending document transformation; that is, the result of transforming a schema L, denoted h#m P C #L##, is fh#m P C #t## j t 2 Lg. Given a tree automaton that accepts L,we can e#ectively construct a tree automaton that accept...
Compilation of Functional Languages Using Flow Graph Analysis
, 1994
"... syntax, and syntactic and semantic domains of a flow graph Figure 9. Semantic equations Def and Exp of a flow graph The first argument to the functions Def and Exp specifies a set of nodes that represent a flow graph, from which the element(s) of current interest are selected by pattern matching. ..."
Abstract
-
Cited by 16 (12 self)
- Add to MetaCart
syntax, and syntactic and semantic domains of a flow graph Figure 9. Semantic equations Def and Exp of a flow graph The first argument to the functions Def and Exp specifies a set of nodes that represent a flow graph, from which the element(s) of current interest are selected by pattern matching.
Specifying Rule-based Query Optimizers in a Reflective Framework
- Proceedings of the International Conference on Deductive and Object-Oriented Databases
, 1993
"... . Numerous structures for database query optimizers have been proposed. Many of those proposals aimed at automating the construction of query optimizers from some kind of specification of optimizer behavior. These specification frameworks do a good job of partitioning and modularizing the kinds of i ..."
Abstract
-
Cited by 14 (5 self)
- Add to MetaCart
. Numerous structures for database query optimizers have been proposed. Many of those proposals aimed at automating the construction of query optimizers from some kind of specification of optimizer behavior. These specification frameworks do a good job of partitioning and modularizing the kinds of information needed to generate a query optimizer. Most of them represent at least part of this information in a rule-like form. Nevertheless, large portions of these specifications still take a procedural form. The contributions of this work are threefold. We present a language for specifying optimizers that captures a larger portion of the necessary information in a declarative manner. This language is in turn based on a model of query rewriting where query expressions carry annotations that are propagated during query transformation and planning. This framework is reminiscent of inherited and synthesized attributes for attribute grammars, and we believe it is expressive of a wide range of i...
Context Patterns in Haskell
- In 8th Int. Workshop on Implementation of Functional Languages, LNCS 1268
, 1996
"... In modern functional languages, pattern matching is used to define functions or expressions by performing an analysis of the structure of values. We extend Haskell with a new nonlocal form of patterns called context patterns, which allow the matching of subterms without fixed distance from the root ..."
Abstract
-
Cited by 8 (2 self)
- Add to MetaCart
In modern functional languages, pattern matching is used to define functions or expressions by performing an analysis of the structure of values. We extend Haskell with a new nonlocal form of patterns called context patterns, which allow the matching of subterms without fixed distance from the root of the whole term. The semantics of context patterns is defined by transforming them to standard Haskell programs. Typical applications of context patterns are functions which search a data structure and possibly transform it. This concept can easily be adopted for other languages using pattern matching like ML or Clean.
Context Patterns, Part II
- In Implementation of Functional Languages
, 1997
"... Functional languages allow the definition of functions by pattern matching, which performs an analysis of the structure of values. However, the structures which can be described by such patterns are restricted to a fixed portion from the the root of the value. Context patterns are a new nonlocal for ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Functional languages allow the definition of functions by pattern matching, which performs an analysis of the structure of values. However, the structures which can be described by such patterns are restricted to a fixed portion from the the root of the value. Context patterns are a new nonlocal form of patterns, which allow the matching of subterms without fixed distance from the root of the value. Typical applications of context patterns are functions which search a data structure for patterns and transform it by replacing the pattern. In this paper we introduce a new construct called extended context, which allows the definition of transformational functions without superfluous repetition of the recursive search.

