Module Configuration

This module defines some configuration options for the partial evaluator. It is to shared by the partial evaluator itself and the test driver to allow some reuse of option parsing.

Author: Björn Peemöller

Version: April 2015

Summary of exported operations:

colorModes :: [(ColorMode,String,String)]   
Description and flag of coloring modes
semantics :: [(Semantics,String,String)]   
Description and flag of optimization levels
abstractions :: [(Abstraction,String,String)]   
Description and flag of abstractions
proceedModes :: [(ProceedMode,String,String)]   
Description and flag of optimization levels

Exported datatypes:


ColorMode

Mode to control coloring of output.

Constructors:

  • CMAlways :: ColorMode : Always color the output.
  • CMAuto :: ColorMode : Only color when stdout is connected to a terminal
  • CMNever :: ColorMode : Never color the output.

Semantics

Semantics used for unfolding.

Constructors:

  • RLNT :: Semantics : see paper xxx
  • Natural :: Semantics : see paper yyy
  • LetRW :: Semantics

Abstraction

Kind of abstraction operator.

Constructors:

  • None :: Abstraction : no generalization (termination is not ensured).
  • WFO :: Abstraction : generalization based on a well-founded order (termination ensured).
  • WQO :: Abstraction : generalization based on a well-quasi order. Termination is ensured even for integers by translating them to expressions. Note that only None and WQO really pass the "KMP-test".

ProceedMode

Mode to control function unfolding.

Constructors:

  • PMNone :: ProceedMode
  • PMOne :: ProceedMode
  • PMEach :: ProceedMode
  • PMAll :: ProceedMode

Exported operations:

colorModes :: [(ColorMode,String,String)]   

Description and flag of coloring modes

Further infos:
  • solution complete, i.e., able to compute all solutions

semantics :: [(Semantics,String,String)]   

Description and flag of optimization levels

Further infos:
  • solution complete, i.e., able to compute all solutions

abstractions :: [(Abstraction,String,String)]   

Description and flag of abstractions

Further infos:
  • solution complete, i.e., able to compute all solutions

proceedModes :: [(ProceedMode,String,String)]   

Description and flag of optimization levels

Further infos:
  • solution complete, i.e., able to compute all solutions