-
Notifications
You must be signed in to change notification settings - Fork 74
Relationship between all the heap types #131
Comments
The graph you've drawn matches my understanding.
My understanding is that the exceptions proposal is debating changes that would drop the And you're probably aware that within this GC proposal, there's some debate around i31, so that might change in the future as well. |
Does this mean that GC will no longer have an |
This GC proposal has an |
Thanks for the clarification. |
* [interpreter] Simplify zero-len and drop semantics * Update overview * [spec] Change drop semantics * [spec] Forgot to adjust prose for *.init ops * [test] Update generated tests for OOBs and dropping changes (#131)
With reference types, function references, exceptions and GC there are multiple proposals in flight currently that introduce or concretise heap types, and I'd like to understand the relationship the new types will have in the whole picture.
There are the
extern
andfunc
heap types coming from reference types, and theexn
heap type from exception handling. GC introducesany
,eq
andi31
on top, establishing the following subtyping relationship:with
signature*
being a concrete functionstruct*
being a concrete structarray*
being a concrete arrayWhat I am not sure about is:
extern
a subtype ofeq
?extern
?exn
a subtype ofeq
?Or is there perhaps something fundamentally wrong in my understanding?
The text was updated successfully, but these errors were encountered: