Open sidnt opened 4 years ago
on the other hand, if we have two zio effects in a blackbox, and we, do some wiring between them, to get a new zio instance, this new zio instance should be true to its type. iow, the new zio, might get new types, which were derived from the types of the previous two zios.
one of the things about compositionality, is typing. types, and the liskov substitution principle
lets say we are looking at two zio effect in a blackbox. we might want to introduce a sub/supertype semantics in between these two blackboxes, for the sake of organization, management and handling.
we might want to say, let
zioX
conforms to a subtype ofzioY
's type.zio is a recursive datatype. it means that behind any zio instance, we might find many other references to other zio instances.