19 citations found. Retrieving documents...
E. Visser. Scoped dynamic rewrite rules. In Mark van den Brand and Rakesh Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, 2001. 18

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
P-logic: property verification for Haskell programs - Kieburtz (2002)   (Correct)

....constructed by hand, using rules of P logic augmented by ad hoc rules to express a few properties needed of integer arithmetic and the ordering of integer values. The proofs were then checked by coding the proof rules and the strategies employed in these proofs in Stratego [VeAB98, Vis99, Vis01b, Vis01a] Two interesting examples are briefly described below. Example 1: length of a catenated list Defining equations for the Haskell functions length and ( are: length [ 0 length (x:xs) 1 length xs [ ys = ys (x:xs) ys = x: xs ys) The proof context (assumptions) # lngth , ....

Eelco Visser. Scoped dynamic rewrite rules. In Mark van den Brand and Rakesh Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001.


Turning Dynamic Typing into Static Typing by Program.. - Olmos, Visser (2003)   Self-citation (Visser)   (Correct)

No context found.

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001.


Turning Dynamic Typing into Static Typing by Program.. - Institute Of Information   Self-citation (Visser)   (Correct)

No context found.

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001.


A Survey of Rewriting Strategies in Program Transformation Systems - Visser (2003)   (9 citations)  Self-citation (Visser)   (Correct)

No context found.

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001. .


Program Transformation with Stratego/XT: Rules, Strategies.. - Visser (2003)   (1 citation)  Self-citation (Visser)   (Correct)

No context found.

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001. 22


Strategies for Fusing Logic and Control via Local.. - Johann, Visser (2003)   Self-citation (Visser)   (Correct)

No context found.

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001.


Program Transformation with Stratego/XT: Rules, Strategies.. - Visser (2004)   (1 citation)  Self-citation (Visser)   (Correct)

No context found.

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001.


Design of the CodeBoost Transformation System for - Domain-Specific Optimisation Of (2003)   Self-citation (Visser)   (Correct)

No context found.

Eelco Visser. Scoped dynamic rewrite rules. In Mark van den Brand and Rakesh Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001.


Constant Propagation - Olmos, Visser (2002)   Self-citation (Visser)   (Correct)

....paths of the program should be followed. In this paper we show how data flow optimizations on abstract syntax trees can be implemented in Stratego [19] a rewriting system extended with programmable rewriting strategies [20] for the control over the application of rules and dynamic rewrite rules [18] for the propagation of information. To illustrate the ideas we develop the specification of constant propagation for Tiger [2] an imperative language with nested functions. In Section 2 we present the abstract syntax of Tiger expressions and define constant folding rules and a generic strategy ....

....compare the approach to related work, and mention future work. We assume that the reader is familiar with the basic concepts of term rewriting. We will explain the Stratego constructs that are used, but not in depth. For an introduction to the basic concepts of Stratego we refer the reader to [20,18]. 2 Constant Folding Constant folding is the simplification of operator expressions with known constant values as operands, i.e. reducing expressions of the form c1 op c2, for some operator op with constant arguments c1 and c2. For example, the expression 3 (6 (5 2) 2 can be ....

[Article contains additional citation context not shown here]

Visser, E., Scoped dynamic rewrite rules, in: M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), Electronic Notes in Theoretical Computer Science 59/4 (2001).


The Essence of Strategic Programming - Lämmel, Visser, Visser (2002)   (1 citation)  Self-citation (Visser)   (Correct)

....In the design of Stratego, the prime issue was to effectively support the development of program transformation systems. Hence, Stratego can be viewed as a domain specific language (DSL) Domain specific constructs were integrated, namely hygienic symbol generation, scoped dynamic rewrite rules [37], and a foreign language interface. The DSL character is also reflected by specific optimisations [16] and the use of a designated run time term representation that allows for sharing, constant time equality test, and hidden transportation of comments and layout. Strategies in general purpose ....

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Electronic Notes in Theoretical Computer Science, volume 59. Elsevier Science Publishers, 2001.


Building Interpreters with Rewriting Strategies - Dolstra, Visser (2002)   (2 citations)  Self-citation (Visser)   (Correct)

....of the RhoStratego language [6] Section 7 discusses applications of this approach. All examples are specified in Stratego, a language for program transformation based on the paradigm of rewriting strategies [14] We explain the Stratego constructs used, but not in depth. For a full account see [14,13,16]. 2 Lambda Reduction with Explicit Substitution In this section we explore various ways of defining interpreters for lambda expressions using explicit substitution. Lambda expressions are composed of variables, applications of lambda expressions, and abstractions of variables from lambda ....

....to the expression with which it should be substituted. Ordinary rewrite rules cannot be used, however, since the set of bindings is extended dynamically during evaluation. In this section we replace the explicit substitution environment by a set of dynamic rewrite rules. A dynamic rewrite rule [13] is a rewrite rule that is generated at run time and that can inherit (meta )variable bindings from its generation context. The application of an abstraction gives rise to a substitution. Using dynamic rules this is expressed by rewriting the application to the body of the abstraction and ....

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, 2001. 3, 11


Rewriting Strategies for Instruction Selection - Bravenboer, Visser (2002)   Self-citation (Visser)   (Correct)

....based on dynamic programming in the style of [1] to compute the cheapest rewrite sequence given costs associated with rewrite rules. The generic specification of dynamic programming is very concise, it fits in half a page, and provides a nice illustration of the use of scoped dynamic rewrite rules [9]. 2 Instruction Selection In this section we describe instruction selection as a rewriting problem. First we describe a simple intermediate representation and a subset of an instruction set for a RISC like machine. Then we describe the problem of code generation for this RISC machine as a set of ....

....FP p STORE m o ADD y B C LOADI x y 8 STOREI x FP 4 Fig. 7. All possible instruction selections for the example IR tree and three pretty printed code sequences elements in these definitions will be explained when needed. For a full account we refer to the literature; good starting points are [10,9,11]. 3.2 Exhaustive Application The traditional way to interpret a set of rewrite rules is by applying them exhaustively to a subject term. The following strategy takes this approach: innermost tilings = innermost(Select ADD Select ADDI Select STORE Select LOAD Select STOREI ....

[Article contains additional citation context not shown here]

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001.


First-class Rules and Generic Traversal - Dolstra, Visser (2001)   Self-citation (Visser)   (Correct)

....strict. This means that we lose the ability to make infinite or cyclic data structures, but we keep the other advantages of laziness (e.g. the ability to define control structures) It would be interesting to explore several other Stratego features in a functional context, such as dynamic rules [26] and an explicit match operator. The latter would give us first class patterns, i.e. the ability to name and abstract over patterns. We are also interested in non local variable bindings. For example, we can write x: fetch( Foo(x) x in Stratego. That is, walk over a list until an element is ....

E. Visser. Scoped dynamic rewrite rules. In M. G. J. van den Brand and R. Verma, editors, Second International Workshop on Rule-Based Programming (RULE'02), Firenze, Italy, September 2001. 8


Building Interpreters with Rewriting Strategies - Dolstra, Visser (2002)   (2 citations)  Self-citation (Visser)   (Correct)

....of the RhoStratego language [6] Section 7 discusses applications of this approach. All examples are speci ed in Stratego, a language for program transformation based on the paradigm of rewriting strategies [14] We explain the Stratego constructs used, but not in depth. For a full account see [14,13,16]. 2 Lambda Reduction with Explicit Substitution In this section we explore various ways of de ning interpreters for lambda expressions using explicit substitution. Lambda expressions are composed of variables, applications of lambda expressions, and abstractions of variables from lambda ....

....to the expression with which it should be substituted. Ordinary rewrite rules cannot be used, however, since the set of bindings is extended dynamically during evaluation. In this section we replace the explicit substitution environment by a set of dynamic rewrite rules. A dynamic rewrite rule [13] is a rewrite rule that is generated at run time and that can inherit (meta )variable bindings from its generation context. The application of an abstraction gives rise to a substitution. Using dynamic rules this is expressed by rewriting the application to the body of the abstraction and ....

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, 2001. 3, 11


The Essence Of Strategic Programming - An inquiry into.. - Lämmel, Visser, Visser (2002)   Self-citation (Visser)   (Correct)

....a term is needed. In conventional settings this problem is solved by threading information along the traversal over the tree by means of additional parameters of the traversal function. This a ects all control functions that are called along the way. Stratego provides scoped dynamic rewrite rules [66], which allows a traversal to generate a new rewrite rule at the point where context information is available and apply it at a later stage, without explicitly threading the information. The application of dynamic rules is illustrated by the conversion from BNF to EBNF in Figure 12. The ....

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001. 22


Building Interpreters with Rewriting Strategies - Dolstra, Visser (2002)   (2 citations)  Self-citation (Visser)   (Correct)

....RhoStratego language [6] Section 7 discusses applications of this approach. All examples are specified in Stratego, a language for program transforma2 tion based on the paradigm of rewriting strategies [12] We explain the Stratego constructs used, but not in depth. For a full account see [12, 13, 14] 2 Lambda Reduction with Explicit Substitution In this section we explore various ways of defining interpreters for lambda expressions using explicit substitution. 2.1 Beta Reduction Lambda expressions are composed of variables, applications of lambda expressions, and abstractions of ....

....variable to the expression it should be substituted with. Ordinary rewrite rules cannot be used, however, since the set of bindings is extended dynamically during evaluation. In this section we replace the explicit substitution environment by a set of dynamic rewrite rules. A dynamic rewrite rule [13] is a rewrite rule that is generated at run time and that can inherit (meta )variable bindings from its generation context. 4.1 Eager Evaluation The application of an abstraction gives rise to a substitution. Using dynamic rules this is expressed by rewriting the application to the body of the ....

[Article contains additional citation context not shown here]

E. Visser. Scoped dynamic rewrite rules. In M. van den Brand and R. Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001.


First-class Rules and Generic Traversal - Dolstra, Visser   Self-citation (Visser)   (Correct)

.... This means that we lose the ability to make in nite or cyclic data structures, but we keep the other advantages of laziness (e.g. the ability to de ne control structures) 11 It would be interesting to explore several other Stratego features in a functional context, such as dynamic rules [26] and an explicit match operator. The latter would give us rst class patterns, i.e. the ability to name and abstract over patterns. We are also interested in non local variable bindings. For example, we can write fx: fetch( Foo(x) xg in Stratego. That is, walk over a list until an element is ....

E. Visser. Scoped dynamic rewrite rules. In M. G. J. van den Brand and R. Verma, editors, Second International Workshop on Rule-Based Programming (RULE'02), Firenze, Italy, September 2001.


From Rogue to MicroRogue - Stump, Besand, Brodman, Hseu.. (2000)   (Correct)

No context found.

E. Visser. Scoped dynamic rewrite rules. In Mark van den Brand and Rakesh Verma, editors, Rule Based Programming (RULE'01), volume 59/4 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, 2001. 18


Partial Evaluation using Rewrite Rules - Specification Of Partial   (Correct)

No context found.

Eelco Visser. Scoped dynamic rewrite rules. In Mark van den Brand and Rakesh Verma, editors,Rule Based Programming (RULE'01), volume 59/4 ofElectronic Notes in Theoretical Computer Science. Elsevier Science Publishers, September 2001.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC