You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently (on main) kind arguments and any value whose type is an earlier (kind) argument are compiled to a Hugr parameter of type unit (i.e. Sum([[]]))
Instead, arguments whose type is a kind argument should be compiled to have some extension-defined type Dynamic
The kind arguments themselves might be ok as unit, at least for now - we may need to represent those too eventually (e.g. for dependent tuples), i.e. if any backend needs runtime type information (?)
We'll also need to fix the type errors in Hugr validation - any time a value of known type is converted to a Dynamic, or vice versa, and also any time a graph/higher-order-function-value (say Int->Int passed into a Dynamic->Dynamic), we'll need to add a magic coercion op
The text was updated successfully, but these errors were encountered:
Originally raised by @acl-cqc:
main
) kind arguments and any value whose type is an earlier (kind) argument are compiled to a Hugr parameter of type unit (i.e.Sum([[]])
)Dynamic
unit
, at least for now - we may need to represent those too eventually (e.g. for dependent tuples), i.e. if any backend needs runtime type information (?)Dynamic
, or vice versa, and also any time a graph/higher-order-function-value (sayInt->Int
passed into aDynamic->Dynamic
), we'll need to add a magic coercion opThe text was updated successfully, but these errors were encountered: