Closed dsheets closed 10 years ago
I seem to be able to write:
module type N = module type of M with type t = [>
A ] as 'a constraint 'a = [
A | `B ];;which, I think, is currently unrepresentable.
Yes, I forgot to include constraints
in TypeDecl.Equation.t
.
Should TypeDecl.t refer to TypeDecl.Equation.t?
I hadn't thought of that. It makes sense and would avoid errors like the one above where they get out of sync. I'll make that change later today (I'll probably also put TypeDecl.kind
into its own TypeDecl.Kind
module for consistency).
I've made the change. It's not a perfect fit because now equations on with constraints can have empty manifests, but I think it is still an improvement overall.
Should
TypeDecl.t
refer toTypeDecl.Equation.t
?I seem to be able to write:
which, I think, is currently unrepresentable.