Module Language.Curry.CheckOperations

Author
Michael Hanus
Version
April 2025

Set functions are intended to exist for every top-level function. The operation checkSetUse detects unintended uses of set funtions. Furthermore, the operation checkBlacklistUse checks whether internal operations like Prelude.=:<= or Prelude.prim_ are used in a Curry program.

See programs SetFuns.curry and NonStrictUniv.curry in the package directory examples for some examples.

Exported Functions:

Exported Functions


checkSetUse :: Prog -> IO [((String, String), String)]  Deterministic 

Returns messages about unintended uses of set functions in a FlatCurry program.

Further infos:
  • might behave indeterministically

checkBlacklistUse :: CurryProg -> IO [((String, String), String)]  Deterministic 

Returns messages about uses of black-listed operations occurring in an AbstractCurry program.

Further infos:
  • might behave indeterministically