@@ -251,15 +251,19 @@ public export
251251or : a -> a -> Either b c -> a
252252or x y = either (const x) (const y)
253253
254−public export
254+public export %error_reduce
255255add : Type -> Action a
256256add ty = Add (\var => [var ::: ty])
257+
258+public export %error_reduce
259+remove : lbl -> Type -> Action ty
260+remove = Remove
257261
258−public export
262+public export %error_reduce
259263addIfRight : Type -> Action (Either a b)
260264addIfRight ty = Add (either (const []) (\var => [var ::: ty]))
261265
262−public export
266+public export %error_reduce
263267addIfJust : Type -> Action (Maybe a)
264268addIfJust ty = Add (maybe [] (\var => [var ::: ty]))
265269