... | @@ -20,7 +20,7 @@ type FixedRuntimeRep :: RuntimeRep -> Constraint |
... | @@ -20,7 +20,7 @@ type FixedRuntimeRep :: RuntimeRep -> Constraint |
|
class FixedRuntimeRep rep where {}
|
|
class FixedRuntimeRep rep where {}
|
|
```
|
|
```
|
|
|
|
|
|
Whenever a situation arises in which a `RuntimeRep` must be monomorphic, we emit a `FixedRuntimeRep rep` Wanted constraint. The constraint solver attempts to solve these Wanted constraints; if it can't, a type error is reported that tells the user that a representation-polymorphic type isn't allowed. Otherwise, it produces evidence, to be passed onto the code generator (see the section [Evidence for FixedRuntimeRep and code generation](#Evidence-for-FixedRuntimeRep-and-code-generation)).
|
|
Whenever a situation arises in which a `RuntimeRep` must be monomorphic, we emit a `FixedRuntimeRep rep` Wanted constraint. The constraint solver attempts to solve these Wanted constraints; if it can't, a type error is reported that tells the user that a representation-polymorphic type isn't allowed. Otherwise, it produces evidence, to be passed onto the code generator (see the section [Evidence for FixedRuntimeRep and code generation](#evidence-for-fixedruntimerep-and-code-generation)).
|
|
|
|
|
|
# Details
|
|
# Details
|
|
## Emitting FixedRuntimeRep constraints
|
|
## Emitting FixedRuntimeRep constraints
|
... | | ... | |