All of this would be handy for defining things piecemeal and then gluing them together.
I think this is generally possible, since these types are usually "permissions", that say what is allowed, so there is usually a sensible way to union them by allowing everything that either side allows.
However, there are a lot of types here, so we probably need to do something generic. I would really like to avoid doing things by hand if we possibly can!
All of this would be handy for defining things piecemeal and then gluing them together.
I think this is generally possible, since these types are usually "permissions", that say what is allowed, so there is usually a sensible way to union them by allowing everything that either side allows.
However, there are a lot of types here, so we probably need to do something generic. I would really like to avoid doing things by hand if we possibly can!