From owner-sc22wg5@dkuug.dk  Thu Jun 19 14:53:54 2003
Received: (from majordom@localhost)
	by dkuug.dk (8.12.8p1/8.9.2) id h5JCrsj3020967
	for sc22wg5-domo; Thu, 19 Jun 2003 14:53:54 +0200 (CEST)
	(envelope-from owner-sc22wg5@dkuug.dk)
X-Authentication-Warning: ptah.dkuug.dk: majordom set sender to owner-sc22wg5@dkuug.dk using -f
Received: from inf.rl.ac.uk (nfs7.inf.rl.ac.uk [130.246.72.7])
	by dkuug.dk (8.12.8p1/8.9.2) with ESMTP id h5JCrnEc020962
	for <sc22wg5@dkuug.dk>; Thu, 19 Jun 2003 14:53:51 +0200 (CEST)
	(envelope-from j.k.reid@rl.ac.uk)
Received: from numerical.cc.rl.ac.uk (numerical [130.246.8.23])
	by inf.rl.ac.uk (8.11.6+Sun/8.8.8) with ESMTP id h5JCptD24016
	for <sc22wg5@dkuug.dk>; Thu, 19 Jun 2003 13:51:55 +0100 (BST)
Received: from rl.ac.uk (jkr.cse.rl.ac.uk [130.246.9.202])
	by numerical.cc.rl.ac.uk (8.8.8+Sun/8.8.8) with ESMTP id OAA27210
	for <sc22wg5@dkuug.dk>; Thu, 19 Jun 2003 14:02:35 +0100 (BST)
Message-ID: <3EF1B363.3080405@rl.ac.uk>
Date: Thu, 19 Jun 2003 13:58:11 +0100
From: John Reid <j.k.reid@rl.ac.uk>
Reply-To: j.k.reid@rl.ac.uk
Organization: Rutherford Appleton Laboratory
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: sc22wg5@dkuug.dk
Subject: Re: (SC22WG5.2784) Modules TR
References: <200306181835.h5IIZp1Z016118@dkuug.dk> <200306191032.h5JAWkjp020277@dkuug.dk>
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
Sender: owner-sc22wg5@dkuug.dk
Precedence: bulk


>> Lawrie is correct in assuming that the intent in 03-123 was to allow to
>> put a forward interface in the scoping unit either of a module or
>> submodule, and to have the corresponding implementation be in the same
>> program unit as the interface, or in a descendant.  If the words in
>> 03-123 don't say that, it's a mistake that ought to be corrected.
>>
> I think John is wrong here. A submodule may need to have a number 
> auxilliary procedures that are needed to implement the facilities it is 
> handling. These may best be delegated to a sub-submodule so as to 
> further limit the cascade compilation effect. An artificial restriction 
> of forward interfaces to the ultimate parent module would be unhelpful 
> and is unnecessary. There is a mistake in 03-123 in this.

Yes, I focused on C1204a on page 8 of 03-123. Reading other words in 
03-123, I see that C1204a needs the edit: after 'module' add 'or 
submodule'.

And, yes, I can see the merit of having a separate module procedure 
defined in a submodule and not accessible by USE. Such a procedure is 
accessible in its submodule and all its descendants, but nowhere else.
Essentially, it has the PRIVATE attribute, but this is not declared 
explicitly.

Cheers,

John.







