+ Synonyms
+%* *
+%************************************************************************
+-- These synonyms are here and not in Id because otherwise we need a very
+-- large number of SOURCE imports of Id.hs :-(
+
+\begin{code}
+type EvVar = Var -- An evidence variable: dictionary or equality constraint
+ -- Could be an DictId or a CoVar
+
+type Id = Var -- A term-level identifier
+type DFunId = Id -- A dictionary function
+type EvId = Id -- Term-level evidence: DictId or IpId
+type DictId = EvId -- A dictionary variable
+type IpId = EvId -- A term-level implicit parameter
+
+type TyVar = Var
+type CoVar = TyVar -- A coercion variable is simply a type
+ -- variable of kind @ty1 ~ ty2@. Hence its
+ -- 'varType' is always @PredTy (EqPred t1 t2)@
+\end{code}
+
+%************************************************************************
+%* *