## How to Give Local Strategies to Function Symbols for Equality of Two Implementations of the E-strategy with and without Evaluated Flags (1998)

Venue: | Proceedings of Asian Symposium on Computer Mathematics |

Citations: | 3 - 1 self |

### BibTeX

@INPROCEEDINGS{Nagaya98howto,

author = {Takashi Nagaya and Michihiro Matsumoto and Kazuhiro Ogata and Kokichi Futatsugi},

title = {How to Give Local Strategies to Function Symbols for Equality of Two Implementations of the E-strategy with and without Evaluated Flags},

booktitle = {Proceedings of Asian Symposium on Computer Mathematics},

year = {1998},

pages = {71--81}

}

### OpenURL

### Abstract

. The evaluation strategy (abbr. the E-strategy) initiated by OBJ2 is one of compromises between outermost and innermost reduction strategies. Although rewriting with the E-strategy is intuitively easy-to-understand, the straightforward implementation cannot lead to efficient rewriting. Then, the implementations of OBJ3 and CafeOBJ use evaluated flags to implement reasonably rewriting with the E-strategy. However, rewriting with evaluated flags is not always equivalent to that without evaluated flags, which depends on local strategies given to function symbols. So far we did not have any useful guidelines on how to give local strategies to function symbols. In this paper, we present a sufficient but reasonable condition (i.e. how to give local strategies to function symbols) that two implementations of the E-strategy with and without evaluated flags are equivalent, and give its proof. 1. Introduction A reduction strategy is a function that takes a set of rewrite rules (i.e. a term rew...

### Citations

751 | Rewrite systems
- Dershowitz, Jouannaud
- 1992
(Show Context)
Citation Context ... the E-strategy with and without evaluated flags are equivalent, and give its proof. 1. Introduction A reduction strategy is a function that takes a set of rewrite rules (i.e. a term rewriting system =-=[1, 9]-=-) and a term to be rewritten as its arguments, and prescribes which redices in the term have to be rewritten next. It affects termination, space efficiency and rewriting speed in no small way. Outermo... |

565 | Term Rewriting Systems
- Klop
- 1992
(Show Context)
Citation Context ... the E-strategy with and without evaluated flags are equivalent, and give its proof. 1. Introduction A reduction strategy is a function that takes a set of rewrite rules (i.e. a term rewriting system =-=[1, 9]-=-) and a term to be rewritten as its arguments, and prescribes which redices in the term have to be rewritten next. It affects termination, space efficiency and rewriting speed in no small way. Outermo... |

143 |
Miranda: a non-strict functional language with polymorphic types
- Turner
- 1985
(Show Context)
Citation Context ... Therefore, some compromises have been proposes. The functional strategy [10] is one of them, which is often used in the field of the implementation of non-strict functional languages such as Miranda =-=[14]-=- and Haskell [7]. Kamperman and Walters have proposed a transformation method for TRSs and terms to be rewritten so that lazy evaluation can be simulated on an implementation of eager evaluation: lazy... |

129 |
Eekelen. Functional Programming and Parallel Graph Rewriting
- Plasmeijer, van
- 1993
(Show Context)
Citation Context ...ince a strictness analyzer is very conservative, sometimes it may decide that some arguments cannot be evaluated in advance even if they can be done. Therefore, a non-strict functional language Clean =-=[13]-=- allows programmers to specify that some arguments can be fully evaluated in advance by giving them strict annotations. 7. Conclusion We have presented a sufficient condition (i.e. how to give local s... |

121 | Introducing OBJ
- Goguen, Winkler, et al.
- 2000
(Show Context)
Citation Context ...strategy [10] and lazy rewriting on eager machinery [8]. The evaluation strategy [3] (abbr. the E-strategy) is one of the compromises. The family of OBJ algebraic specification languages such as OBJ3 =-=[5, 6]-=- and CafeOBJ [2, 4, 11] adopt the E-strategy as their reduction strategies. The E-strategy is more flexible than lazy, eager or any other fixed order of evaluation because each function symbol can hav... |

104 |
Algebraic Semantics of Imperative Programs
- Goguen, Malcolm
- 1996
(Show Context)
Citation Context ...strategy [10] and lazy rewriting on eager machinery [8]. The evaluation strategy [3] (abbr. the E-strategy) is one of the compromises. The family of OBJ algebraic specification languages such as OBJ3 =-=[5, 6]-=- and CafeOBJ [2, 4, 11] adopt the E-strategy as their reduction strategies. The E-strategy is more flexible than lazy, eager or any other fixed order of evaluation because each function symbol can hav... |

80 |
Report on the Programming Language Haskell
- Hudak, Jones, et al.
- 1992
(Show Context)
Citation Context ...compromises have been proposes. The functional strategy [10] is one of them, which is often used in the field of the implementation of non-strict functional languages such as Miranda [14] and Haskell =-=[7]-=-. Kamperman and Walters have proposed a transformation method for TRSs and terms to be rewritten so that lazy evaluation can be simulated on an implementation of eager evaluation: lazy rewriting on ea... |

25 |
An overview of CAFE specification environment – an algebraic approach for creating, verifying, and maintaining formal specifications over networks
- Futatsugi, Nakagawa
- 1997
(Show Context)
Citation Context ...azy rewriting on eager machinery [8]. The evaluation strategy [3] (abbr. the E-strategy) is one of the compromises. The family of OBJ algebraic specification languages such as OBJ3 [5, 6] and CafeOBJ =-=[2, 4, 11]-=- adopt the E-strategy as their reduction strategies. The E-strategy is more flexible than lazy, eager or any other fixed order of evaluation because each function symbol can have its own local strateg... |

23 | Lazy rewriting on eager machinery
- Fokkink, Kamperman, et al.
- 2000
(Show Context)
Citation Context ...st reduction strategies. Therefore, some compromises between outermost and innermost reduction strategies have been proposed such as the functional strategy [10] and lazy rewriting on eager machinery =-=[8]-=-. The evaluation strategy [3] (abbr. the E-strategy) is one of the compromises. The family of OBJ algebraic specification languages such as OBJ3 [5, 6] and CafeOBJ [2, 4, 11] adopt the E-strategy as t... |

9 |
Implementation of term rewritings with the evaluation strategy
- Ogata, Futatsugi
- 1997
(Show Context)
Citation Context ...evaluated more than once. The implementations of OBJ3 and CafeOBJ make use of evaluated flags. Furthermore, evaluated flags have led us to an efficient implementation of rewriting with the E-strategy =-=[12]-=-. However, there are some examples such that the result of rewriting a term with the E-strategy with evaluated flags are different from that of rewriting the term with the E-strategy without evaluated... |

7 |
Graph rewriting using the annotated functional strategy
- Koopman, Smetsers, et al.
- 1993
(Show Context)
Citation Context ...lemented much more efficiently than outermost reduction strategies. Therefore, some compromises between outermost and innermost reduction strategies have been proposed such as the functional strategy =-=[10]-=- and lazy rewriting on eager machinery [8]. The evaluation strategy [3] (abbr. the E-strategy) is one of the compromises. The family of OBJ algebraic specification languages such as OBJ3 [5, 6] and Ca... |