The following two approaches to import aggregation were discussed and rejected:
Any module imported by a module might automatically be re-exported.
A definition part which imports one or more modules but exports no items on its own might be deemed to have the purpose of re-exporting all the imported modules ...
DEFINITION MODULE Collections; IMPORT Stack, Queue, BinarySearchTree, Trie, HashTable, DynamicArray; END Collections.
Importing Collections
brings all re-exported modules into scope ...
MODULE UseCollections; IMPORT Collections; VAR stack : Stack; ... stack := Stack.New(size, status); ... END UseCollections.