Skip to content

Commit c464bbb

Browse files
committed
Update stale paragraph in Type Checking section
1 parent 8d7a3df commit c464bbb

File tree

1 file changed

+3
-6
lines changed

1 file changed

+3
-6
lines changed

design/mvp/Explainer.md

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1093,12 +1093,9 @@ type-checking rules for instantiating type imports mirror the *elimination*
10931093
rule of [universal types] (∀T).
10941094

10951095
Importantly, this type substitution performed by the parent is not visible to
1096-
the child at validation- or run-time. In particular, the type checks performed
1097-
by the [Canonical ABI](CanonicalABI.md#context) use distinct type tags for
1098-
distinct type imports and associate type tags with *handles*, not the underlying
1099-
*resource*, leveraging the shared-nothing nature of components to type-tag handles
1100-
at component boundaries and avoid the usual [type-exposure problems with
1101-
dynamic casts][non-parametric parametricity].
1096+
the child at validation- or run-time. In particular, there are no runtime
1097+
casts that can "see through" to the original type parameter, avoiding
1098+
avoiding the usual [type-exposure problems with dynamic casts][non-parametric parametricity].
11021099

11031100
In summary: all type constructors are *structural* with the exception of
11041101
`resource`, which is *abstract* and *generative*. Type imports and exports that

0 commit comments

Comments
 (0)