At 10:42 PM +0800 2/3/03, Peter N Lewis wrote:
Please note I'm not advocating Uses Propagation as something that has to go in to GPC, just trying to clarify where it might be useful. There is certainly a good case to be made against uses propagation, and I think I'd rather see some sort of extension to allow this to be used where appropriate, perhaps something like a synonym for "uses" that also reexports the listed units, or perhaps something like "uses WonderSoundInput (reexport);" or perhaps in the style of "external", something like "uses WonderSoundInput; reexport;" although that would really require allowing multiple "uses" statements to allow for some that were reexported and some that were not.
You're right (and I like your example) but having uses work "in context" w.r.t. interface or implementation avoids the need to do this make up extra syntax to handle exporting. I'll address this in a later post (to try answer as much as I can in one place).
While the two unit schemes use the same keywords, they work conceptually differently. Its like a dialect difference to me: something a compiler flag to switch modes could be made (and a compiler directive as I'm a fan of compiler directives to keep things documented within the code ;-) ). But give me a day or so to conjure up a proper code-example based explanation.
Grant