Additions to the repository

Carl Ollivier-Gooch cfog at mech.ubc.ca
Thu Dec 10 03:29:11 CST 2009


Tim Tautges wrote:
> 
> 
> Carl Ollivier-Gooch wrote:
> 
>>
>> In the short term, definitely, because I'm not currently taking 
>> advantage of the name bindings, so whatever the Fortran compiler 
>> normally does happens with those names.  I did this because, for some 
>> reason, gfortran 4.3.x doesn't support name bindings.  In the long 
>> run, I think the usual preprocessor magic can be used to have the same 
>> effect.
>>
>> In the longer run, I'll wonder aloud whether we shouldn't look to some 
>> other solution for F77 compatibility.  For instance, commercial 
>> compilers presumably support Fortran 2003 and 77 in the same 
>> executable, so the cost to applications of compiling routines that 
>> access iMesh using the F2003 capabilities may not be too painful.  
>> Alternatively, the wrappers to hide some of the ugliness that Fortran 
>> pushes on us (and fix the name thing) would be very thin, much thinner 
>> than the wrappers we all already have to convert iMesh calls to native 
>> database calls.
>>
> 
> Is there something about the current cpp-based name mangling that 
> doesn't work in F2003, or just that there seems to be a more elegant 
> mechanism in F2003 to handle C names?  If the latter, I for one don't 
> have time to change gears this late in the game.  I also am skeptical 
> about requiring F2003 for any f77 application.  The commercial compilers 
> may have caught up, but what about those on the petascale machines?  
> Also, I'd assert that compatibility with gfortran buys us mindshare, 
> which is almost as important.  Finally, if we open up the discussion 
> about wrappers at this point, we could probably spend the next 6 months 
> figuring out the right solution, and another year before all the 
> implementations catch up.  I think the time would be better spent 
> implementing the parts of our current spec which nobody has implemented 
> yet.

I certainly am not going to push particularly hard on this.  But the
reasons I see for wrappers have a lot more to do with the hassles of
string passing compatibility and a lot less to do with elegance.

Your point about the compilers on the petascale machines is well taken,
and I don't know the answer.

Finally, as a matter of curiosity, when you refer to things that aren't
implemented by anyone yet, I assume you're talking iMeshP rather than
iMesh?  If not, what parts of the iMesh spec are you referring to?

Carl

-- 
------------------------------------------------------------------------
Dr. Carl Ollivier-Gooch, P.Eng.                   Voice: +1-604-822-1854
Associate Professor                                 Fax: +1-604-822-2403
Department of Mechanical Engineering             email: cfog at mech.ubc.ca
University of British Columbia              http://www.mech.ubc.ca/~cfog
Vancouver, BC  V6T 1Z4                  http://tetra.mech.ubc.ca/ANSLab/
------------------------------------------------------------------------




More information about the tstt-interface mailing list