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.
checkSetUse
:: Prog -> IO [((String, String), String)]
Returns messages about unintended uses of set functions in a FlatCurry program.
checkBlacklistUse
:: CurryProg -> IO [((String, String), String)]
Returns messages about uses of black-listed operations occurring in an AbstractCurry program.