This version does not implement the Foldable/Traversable in Prelude
proposal thus `elem` does not work on Sets.
,elems,intersectionWith,intersection,keys
,member,notMember,empty)
import qualified Data.Map as Map
+import qualified Data.Set as Set
import Connections
import CTT
U -> VU
App r s -> app (eval rho r) (eval rho s)
Var i
- | i `elem` os -> VOpaque i (lookType i rho)
+ | i `Set.member` os -> VOpaque i (lookType i rho)
| otherwise -> look i rho
Pi t@(Lam _ a _) -> VPi (eval rho a) (eval rho t)
Sigma t@(Lam _ a _) -> VSigma (eval rho a) (eval rho t)