The effect system is much simpler than the type system. With the current representation of effects, it is impossible for tuple projections or record access to propagate effect information correctly in all cases. After the effects are combined in a constructed tuple or record, there is no way to project them according to the position/field being accessed.
This is not a big issue since records and tuples are only associated with Read effects, which doesn't restrict the user in meaningful ways (as Update does)
The effect system is much simpler than the type system. With the current representation of effects, it is impossible for tuple projections or record access to propagate effect information correctly in all cases. After the effects are combined in a constructed tuple or record, there is no way to project them according to the position/field being accessed.
This is not a big issue since records and tuples are only associated with
Read
effects, which doesn't restrict the user in meaningful ways (asUpdate
does)