Data.OpenUnion

Open Union

data Union r a

Open Union Operations

class Weakens q

type family xs :++: ys where ...

decomp

weaken

extract

Open Union Membership Constraints

class Member eff effs

type family Members effs effs' :: Constraint where ...

class LastMember m effs