[m-rev.] should we break up module_qual.m

Zoltan Somogyi zoltan.somogyi at runbox.com
Wed Nov 11 18:54:01 AEDT 2015

I propose carving out four new submodules out of
module_qual.m, which is currently one of the compiler's
biggest modules:

- one for collecting information about what entities
are defined in which modules;

- one for using that information to module quality items;

- one containing the id_set abstract data type and its
operations, which are used by both of the first two modules;

- and one for error handling, including both the management
of error contexts and the generation of error messages.

The very top levels that coordinate these submodules,
and the mq_info type and its access predicates, would
remain in module_qual.m.

There are quite a lot of implementation details that
each of those submodules would hide from all the other
submodules and from module_qual.m itself, which one reason
why  I am proposing this. The other is that the submodules
would make it harder to scatter related predicates in widely
separated parts of a 3000+ line module, as they were before
my previous change :-(

Would anyone object to this?

I propose to name the new modules module_qual.collect_mq_info.m,
module_qual.qualify_items.m, module_qual.id_set.m and
module_qual.qual_errors.m respectively. Feedback on the names
is of course also welcome.


More information about the reviews mailing list