Strategy-based term rewriting with callbacks.
Helper class to contain commonality of choice in non-deterministic choice operator and then-else part of a conditional choice.
Helper class to contain commonality of choice in non-deterministic
choice operator and then-else part of a conditional choice. Only
returned by the non-deterministic choice operator. p
and q
are
evaluated at most once.
Strategy-based term rewriting in the style of Stratego (http://strategoxt.org/).
Strategy-based term rewriting in the style of Stratego (http://strategoxt.org/). The implementation here is partially based on the semantics given in "Program Transformation with Scoped Dynamic Rewrite Rules", by Bravenboer, van Dam, Olmos and Visser, Fundamenta Informaticae, 69, 2005. The library strategies are mostly based on the Stratego library, but also on combinators found in the Scrap Your Boilerplate and Uniplate libraries for Haskell.
Any-rewriting strategies.
Any-rewriting strategies. A strategy is a function that takes a term
of any type as input and either succeeds producing a new term (Some
),
or fails (None
).
Strategy-based term rewriting with callbacks. Clients can register functions that are called whenever a rewrite operation has happened. See the
Rewriter
class documentation for more detail on the methods defined here.