Jean Vezina wrote:
> Jing Guo wrote:
> > Jean Vezina wrote:
> > I think it miss the point! Yes, you can, because your modules do not
> > use my modules. However, I can not, because my modules have to use
> > your binary *.mod files to compile. To make sure my binaries are
> > up to date, I have to wait until your latest version *.mod release
> > becomes available, to recompile all my binaries for my release. For
> > a large system, this sequential build paradigm is obviously not
> > acceptable. (...)
>
> But the same problem occurs even if you have the sources. If I change
> something in the sources, I send to you the new version and you will
> have to recompile if the public interfaces of the modules are changed.
> Consequently, it is exactly the same situation as the *.mod files.
> If the public interfaces are not changed, only relinking is needed.
I'm afraid you still miss the point. The *.mod file (or the module
in the source version) contain some things that may affect library
access and some that may not. While in the source module contains
both the declarations and the actual subroutines, the *.mod file still
contains private data that is not needed for the calling procedure
and cannot possibly be used by it. Thus any changes to such private
data should not cause recompilation of dependent modules. And they
do now.
The interface/implementation separation mechanisms *on* *the*
*language* *level* could possibly lead to a situation where
the *.mod files will no longer be needed, the interface will be
given in the text form without revealing any secrets and the
compilation cascades just would not happen as long as the *public*
interface does not change.
I'd imagine that for this to fully work referential invariance
would be needed (see Van Snyder's proposal 97-114, you can find
the exact page number in the table of contents). That would even
extend the meaning of the declaration remaining the same.
The *.mod files are not a part of the language, not standardized
and not portable. Discussing them is driving the discussion away
from the topic.
Regards,
----------------------------------------------------------------------
Artur Swietanowski mailto:[log in to unmask]
Institut fuer Statistik, Operations Research und Computerverfahren,
Universitaet Wien, Universitaetsstr. 5, A-1010 Wien, Austria
tel. +43 (1) 407 63 55 - 120 fax +43 (1) 406 41 59
----------------------------------------------------------------------
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|