ELAN is an environment for prototyping and combining different deduction systems described using rewrite rules and strategies. Two languages of strategies used for controlling rewriting are presented in this paper. The first one, called built-in strategy language, is hard-wired with the implementation of ELAN, and thus, non-extensible from the user’s point of view. However, it provides an efficient implementation of the more flexible second one, the defined strategy language.
This paper illustrates the defined strategy language on an example of the leftmost innermost normalization strategy, and describes its implementation in ELAN through ameta-interpreter. An optimization technique based on partial evaluation of strategies is presented in this paper. This technique applied to the meta-interpreter of the defined strategy language gives promising results.