Module "FlexRigid.curry"

This library provides a function to compute the rigid/flex status of a FlatCurry expression (right-hand side of a function definition).

Author: Michael Hanus

Version: April 2005


 Exported names:

Datatypes:
FlexRigidResult

Constructors:
ConflictFR | KnownFlex | KnownRigid | UnknownFR

Functions:
getFlexRigid


 Summary of exported functions:

getFlexRigid  :: Expr -> FlexRigidResult  deterministic flexible+rigid
          Computes the rigid/flex status of a FlatCurry expression.

 Imported modules:

FlatCurry
Prelude

 Exported datatypes:

FlexRigidResult

Datatype for representing a flex/rigid status of an expression.

Constructors:

UnknownFR :: FlexRigidResult
ConflictFR :: FlexRigidResult
KnownFlex :: FlexRigidResult
KnownRigid :: FlexRigidResult



 Exported functions:

getFlexRigid :: Expr -> FlexRigidResult  deterministic flexible+rigid

Computes the rigid/flex status of a FlatCurry expression. This function checks all cases in this expression. If the expression has rigid as well as flex cases (which cannot be the case for source level programs but might occur after some program transformations), the result ConflictFR is returned.



Generated by CurryDoc (Version 0.4.1 of June 7, 2007) at Aug 28 15:40:33 2008