It's been almost four years since the f2003 standard was officially adopted, yet Intel still lags far behind all other major Fortran compiler vendors in providing the new functionalities. NAG 5.1 is superior in that regard.
The f2003 implemented by IVF is, so far, miniscule at best.
Things like thefull capability of the ALLOCATE statement (new = typed and sourced allocation, IVF has neither); parameterized derived types; type extension; CLASS; abstract interfaces; procedure pointers; type-bound procedures; deferred attribute; nopass and pass attributes; IEEE 754 arithmetic exceptions, etc; the list ofuseful andpowerful f2003 capabilities not implemented by IVF goes on and on.
And Intel provides incorrect information for a f2003 featureIntel says is implemented: derived type components may be allocatable. That's incorrect and Intel should make it clearonly derived type components that are arrays may be declared allocatable, so that's yet another very useful f2003 thing Intel has not implemented: allocatable scalars, which is huge when one doesn't need the added functionality (and needless headaches) of using pointers.
So, when is Intel going to get earnest about implementinguseful f2003 capabilities?
Brian Lamm
連結已複製
Any news about the Fortran 2003 implementation roadmap ?
When a fully compliant compiler will be available ? 2008 ? 2009 ? 2010 ?
The order of priority should be: Object Oriented features first, user-defined derived type
I/O last. The COM wizard and Module Wizard should be changed to use F2003 syntax.
Best regards,
Jean Vezina
P.S. The rather ironic thing about this is that the Fortran 2008 standardmay wellbecome official before complete Fortran 2003 compilersare even released.
I'd appreciate more detail on your suggestion about the COM and Module wizards. Care to give an example (in general terms)?
Dear Steve,
Currently the Module Wizard generates a wrapper around COM,OLE, orActive X objects. Calling the generated routines is not as straighforward and convenient as it is in other languages such as Visual Basic or C#.
With Fortran 2003, a notation closer to the normal "object notation" could in principle be used.
For example: setting a property: object%property = ... instead of CALL AUTOSETPROPERTY.
Calling a method: call object%method(...) instead of calling a generated subroutine with awkward arguments.
Objectfinalization (destructors) is also now part of Fortran 2003. Currently, all the housekeeping has to be done by the programmer to avoid memory leaks. In Visual Basic, C++, and C#, this is done much more automatically.
Again, that depends on the long term view of Intel about Fortran. Does Intel sees it as a general application development language (Digital and after Compaq didsome good steps in that direction) or just a high performance computational tool where all the GUI and O/S interactions are handled by other languages, leaving the Fortran part just for calculations ?
Best regards,
Jean Vezina
>> And yes, it is indeed likely that F2008 will be finalized before there are "mainstream" F2003 compilers available. That point is not lost on some on the standards committee.
Ahh, there's the problem... The standards committee is moving too fast ;)
Jim
From my point of view, if these features aren't in the language it's really difficult to lift my collection of Fortran (77/90) sources to the next level of (re)useability and maintainability so I'm really excited to hear what the plans are for IVF in this respect.
Regards, Dirk-Jan
As I have stated before, we are committed to implementing the full Fortran 2003 language and that is the #1 priority for the development team.
Quite some time ago now, I was fully satisfied with Intel's personal response (Ron) the details of which are between Intel and me, so is there any way to delete this entire thread?
-Brian
