Open
Description
#2309 merges TypeArg
and TypeParam
into one data structure in hugr-core
. We should further merge Type
into Term
.
Related Issues
- The code currently special cases lists of
Type
s to deal with "row variables". To enable a clean merger, we'd need to get rid of row variables first (see No more row variables #2310). - The capability to define custom
Type
s would be extended to customTerm
s that aren't runtime types (which would solve Allow customTypeArg
s andTypeParam
s. #2296). - Merging
Type
s andTerm
s would allow runtime types to profit from the sharing enabled by reference counted terms (see feat!: Reference counted terms #2338). Runtime types are the primary source of heavily duplicated terms, so this could have a large performance benefit (especially on model deserialisation).