Re: Avoiding compilation cascades
From: Jan Vorbrüggen (jvorbrueggen-not_at_mediasec.de)
Date: 09/27/04
- Next message: Gerry Thomas: "Re: accuracy and precision computing"
- Previous message: Gerry Thomas: "Re: Problem with double precision function"
- In reply to: Bil Kleb: "Avoiding compilation cascades"
- Next in thread: Daniel Grimwood: "Re: Avoiding compilation cascades"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Mon, 27 Sep 2004 09:00:55 +0200
> I have seen evidence that other groups avoid compilation
> cascades by creating the equivalent of C header files. These
> header files contain only module interfaces and are included
> by their respective modules. The inter-module dependencies
> are then tied to these interface files and not the full module.
> Thus, when a given module is changed but it's interface remains
> unchanged, only the altered module needs to be recompiled and
> not ever module that may use it.
The problem with this approach is of course that the compiler has no
way to check that the seperate interface definition and the actual
interface are consistent. In C et al., this achieved by including the
interface definition (the .h file) into the source as well - I'm not
sure, but I think you cannot do that in Fortran. Thus, if you do not
have a development process that makes sure that any changes in interface
are also immediately reflected in the include file, you open yourself to
the age-old problems of inconsistent interfaces.
Are compilation cascades really that big a problem? A lot of compilers
achieve a substantial part of their optimization by doing whole-program
analysis and interprocedural optimization...which means you are re-
compiling "everything" (for a suitable definition of everything with
regard to libraries et al.) in any case, so why not do it sa{f|g}ely?
Jan
- Next message: Gerry Thomas: "Re: accuracy and precision computing"
- Previous message: Gerry Thomas: "Re: Problem with double precision function"
- In reply to: Bil Kleb: "Avoiding compilation cascades"
- Next in thread: Daniel Grimwood: "Re: Avoiding compilation cascades"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|