Strafunski-StrategyLib-5.0.0.3: Library for strategic programming

Portabilityportable
Stabilityexperimental
MaintainerRalf Laemmel, Joost Visser
Safe HaskellNone

Data.Generics.Strafunski.StrategyLib.FixpointTheme

Contents

Description

This module is part of StrategyLib, a library of functional strategy combinators, including combinators for generic traversal. This module defines combinators that iterate until some kind of fixpoint is reached.

Synopsis

Fixpoint Iteration

repeatTP :: MonadPlus m => TP m -> TP mSource

Exhaustive repeated application at the root of the input term

Fixpoint Traversal

reduce :: MonadPlus m => TP m -> TP mSource

Exhaustive repeated application throughout the input term.

outermost :: MonadPlus m => TP m -> TP mSource

Exhaustive repeated application according to the left-most outermost traversal strategy.

innermost' :: MonadPlus m => TP m -> TP mSource

Exhaustive repeated application according to the left-most innermost traversal strategy, implemented in a naive way. Use innermost instead.

innermost :: MonadPlus m => TP m -> TP mSource

Exhaustive repeated application according to the left-most innermost traversal strategy, implemented in a more efficient way.