Recently, Rasmus solved a cyclic dependency between submodules of HighClass by separating types and operations into different modules. It might be a good idea to have one module with the types and one module with the operations: High and, respectively, HighOperations. (Each will have several submodules, such as High.Attribute, High.Instruction, and HighOperations.Attribute.)
The module High would have only an ml file, and no mli file. So we won't have to keep those huge variants in sync.
Recently, Rasmus solved a cyclic dependency between submodules of HighClass by separating types and operations into different modules. It might be a good idea to have one module with the types and one module with the operations: High and, respectively, HighOperations. (Each will have several submodules, such as High.Attribute, High.Instruction, and HighOperations.Attribute.)
The module High would have only an ml file, and no mli file. So we won't have to keep those huge variants in sync.
Related: https://github.com/rgrig/barista/issues/3