CoreSubst

# Main data types

data Subst

type TvSubstEnv

type IdSubstEnv

data InScopeSet

## Substituting into expressions and related types

deShadowBinds

substSpec

substRulesForImportedIds

substTy

substExpr

substExprSC

substBind

substBindSC

substUnfolding

substUnfoldingSC

substUnfoldingSource

lookupIdSubst

lookupTvSubst

substIdOcc

## Operations on substitutions

emptySubst

mkEmptySubst

mkSubst

mkOpenSubst

substInScope

isEmptySubst

extendIdSubst

extendIdSubstList

extendTvSubst

extendTvSubstList

extendSubst

extendSubstList

zapSubstEnv

addInScopeSet

extendInScope

extendInScopeList

extendInScopeIds

isInScope

setInScope

delBndr

delBndrs

## Substituting and cloning binders

substBndr

substBndrs

substRecBndrs

cloneIdBndr

cloneIdBndrs

cloneRecIdBndrs

## Simple expression optimiser

simpleOptPgm

simpleOptExpr

simpleOptExprWith