Results 1 -
5 of
5
Translation of tree-processing programs into stream-processing programs based on ordered linear type
"... There are two ways to write a program for manipulating tree-structured data such as XML documents and S-expressions: One is to write a tree-processing program focusing on the logical structure of the data and the other is to write a stream-processing program focusing on the physical structure. Whil ..."
Abstract
-
Cited by 7 (2 self)
- Add to MetaCart
There are two ways to write a program for manipulating tree-structured data such as XML documents and S-expressions: One is to write a tree-processing program focusing on the logical structure of the data and the other is to write a stream-processing program focusing on the physical structure. While tree-processing programs are easier to write than stream-processing programs, tree-processing programs are less efficient in memory usage since they use trees as intermediate data. Our aim is to establish a method for automatically translating a tree-processing program to a stream-processing one in order to take the best of both worlds. We define a programming language for processing binary trees and a type system based on ordered linear type, and show that every well-typed program can be translated to an equivalent stream-processing program.
Composing Stack-Attributed Tree Transducers
, 2004
"... This paper presents a composition method for stack-attributed tree transducers. Stackattributed tree transducers extend attributed tree transducers with a pushdown stack device for attribute values. Stack-attributed tree transducers are more powerful than attributed tree transducers due to the stack ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
This paper presents a composition method for stack-attributed tree transducers. Stackattributed tree transducers extend attributed tree transducers with a pushdown stack device for attribute values. Stack-attributed tree transducers are more powerful than attributed tree transducers due to the stack mechanism. We extend the existing composition method for attributed tree transducers to the composition method for stack-attributed tree transducers. The composition method is proved to be correct and to enjoy a closure property.
Extension of type-based approach to generation of stream processing programs by automatic insertion of buffering primitives
- In International workshop on Logic-based Program Synthesis and Transformation
, 2005
"... Abstract. In our previous paper, we have proposed a framework for automatically translating tree-processing programs into stream-processing programs. However, in writing programs that require buffering of input data, a user has to explicitly use buffering primitives which copy data from input stream ..."
Abstract
-
Cited by 6 (3 self)
- Add to MetaCart
Abstract. In our previous paper, we have proposed a framework for automatically translating tree-processing programs into stream-processing programs. However, in writing programs that require buffering of input data, a user has to explicitly use buffering primitives which copy data from input stream to memory or copy constructed trees from memory to an output stream. Such explicit insertion of buffering primitives is often cumbersome and worsens the readability of the program. We overcome the above-mentioned problems by developing an algorithm which, given any simply-typed tree-processing program, automatically inserts buffering primitives. The resulting program is guaranteed to be well-typed under our previous ordered-linear type system, so that the program can be further transformed into an equivalent stream-processing program using our previous framework. 1
Event-driven Evaluation of Grammar Queries
, 2005
"... Nachdruck auch auszugsweise verboten c2005 ..."

