Hi,

Is there a definition of the Canonical type (concept)?

In practice, it allows for reducing the number of transformations: from MxN to M+N (M to the canonical, N from it).

In theory, it could contain fields that are the least upper bound (sum) of types mapped to it, and/or the greatest lower bound (intersection) of types it is mapped to. Or such, it would help as a guideline.

Thanks,

Alex