Original-Via: uk.ac.ed.aiai; Thu, 17 Oct 91 18:18:32 BST
> (a general remark:)
>
> The aim of modularisation is (mainly) to govern
> in a divide-and-conquer way huge tasks.
> What is _huge_ depends on the ability/taste/[insert your favourite ...]
> of the humans having to deal with the task
> (and sometimes even on the tools they use, eg. C compilers).
> Prohibiting mutual recursive modules also prohibits
> the division of mutual-recursive tasks.
>
> (end of lesson)
The aim of modularisation is to provide a certain way to divide
huge (or even not so huge) tasks. Some divisions correspond to
"good modularisation", others (eg, procedures with names starting
with A-M in one module, N-Z in a second) do not.
The question here is whether a particular way of dividing tasks
should be supported by a particular language mechanism. There
are good (but perhaps not conclusive) arguments in favor of
support for recursive modules. But "some things are too large
to fit into one module" isn't one of them.
Cheers,
Jeff