home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.lang.fortran      Putting John Backus on a giant pedestal      5,127 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 4,836 of 5,127   
   Thomas Koenig to Lynn McGuire   
   Re: in gfortran, is it faster compile ti   
   12 Nov 24 08:01:40   
   
   From: tkoenig@netcologne.de   
      
   Lynn McGuire  schrieb:   
   > On 11/11/2024 4:01 PM, Thomas Koenig wrote:   
   >> Lynn McGuire  schrieb:   
   >>> In gfortran, is it faster compile times with *.mod files ?  Or is it   
   >>> just as fast compiling to include the module interface information in   
   >>> each subroutine / function file ?   
   >>   
   >> I haven't benchmarked this, but I think likely that there would only   
   >> be a small difference.  Usually, the front end only takes a small part of   
   >> compilation time (but there are pathological cases).   
   >>   
   >> In general, modules are better because of automatic checking.   
   >> If you want to avoid recompilation cascades, submodules (where   
   >> you can separate the definition from the implementation) might   
   >> be worth looking into.   
   >>   
   >>> Is there any chance that gfortran will automatically generate and use   
   >>> module files in the future like IVF ?   
   >>   
   >> Not sure what you're asking for.  Can you give an example?   
   >   
   > 1. you compile abc.f in IVF   
   > 2. IVF automagically creates an abc__genmod.f90 file in your release   
   > subdirectory with the subroutine / function module interface in it   
      
   I think I get the general gist (but it would help me understand   
   if you could post a complete example).   
      
   But gfortran currently does not have such a feature (which appears   
   to duplicate modules).  It is also not immediately clear what should   
   happen if, for example, a procedure uses a derived type from another   
   module... (This may not be relevant to your case, but as a compiler   
   writer, you have to think about this kind of thing :-|)   
      
   What would go wrong if you simply encapsulated abc.f in   
      
         MODULE ABC   
         CONTAINS   
   C  Your code here   
         END MODULE ABC   
      
   ?   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca