Does Compaq/Intel have any plans to release a version of Fortran 2000 (which I know is still in working draft), or at least with partial suport of the new OO friendly features within F2000?
What about other compiler vendors?
CVF 6.6 already has introduced one major new feature from the Fortran 2000 draft - allocatable components of derived types. We are working on other features from the draft, concentrating on those that seem unlikely to change before approval of the standard.
The OO features are still very much in flux and I would not bet on them becoming a part of the final standard. Part of the problem is that they are different from every other OO implementation, and there is widespread disagreement on how the features should work and interoperate with the rest of the language.
Thanks for the info.
The issue with the OO features is really bad news for me (and maybe for many more). Dont know enough about the inner workings of a compiler, maybe the problems arise because of trying to maintain the 'speed' features of Fortran?
Or is it just a typical management by committee problem ...
I can't speak firsthand as to what the issue is with OO, but what I gather is that the committee is dominated, not by compiler developers, but by representatives of academic institutions who fancy themselves "language designers". When there is a general concept that has been implemented elsewhere, they look to change it just enough so that it doesn't resemble anything you've seen before, sometimes making the feature much less useful than it would be otherwise.
In the case of the OO features, what they're aiming towards is something that is not like C++, and not like much of anything else. Some of the terms may seem familiar, but have different meanings. And any sort of interoperability with C++, for example, is not even considered.
I don't hold out much hope for OO being a useful feature of the Fortran language anytime soon (read, next five years). Of course, you can do some OO things in Fortran today with generics.
Actually that's what I'm already doing, but its a lot of work!
I wander why some major users of Fortran (areospace etc) cant put pressure on the committee to come up with something more useful.
Pressure? Such as? The vendors, the few that are left on the committee, have a pretty good track record of promoting what their customers want, but the vendors' votes are overwhelmed nowadays. Of course, we get to choose when and if to implement the features, and I can tell you it will be a long time, if ever, that a major compiler vendor implements ALL of F2004 (or whatever it ends up being.)
If a major Fortran user wants a voice on the committee, all they have to do is join - and then attend meetings. Companies used to sponsor employees on standards committees, but that has dropped off a lot in the last 10 years. User groups such as DECUS used to be on the commitee too, but they are largely gone as well.
I am willing to coordinate a group to represent these "outside" interests. One problem with individuals becoming members is the cost. We can all share in the cost and depending on the number of members send as many representatives as we can afford.
If anyone is interested contact me at: TSH@MATHEMATICUSLABS.COM
I agree with Steve L that Compaq/Intel should wait for the standard to settle first before introducing into the Compiler. Otherwise, application developers will be busy changing the same codes over and over again. I'd rather prefer Compaq/Intel commit in adding more modules/interfaces to platform-specific/network routines.
OO sounds good and markets well. But has anyone read the book Stroustrup's C++ Programming Language ? You will be surprised how much things you need to know (and POTENTIAL PROBLEMS to avoid) before start some serious coding.
So as to no mislead anyone unfamiliar with OOP, It should be stated that OOP is more a style of programming than anything else. The point being that Adherence to it IS OPTIONAL. You can write non OO in Java or that martian language C-- if you wanted to. As well, most (but not all) of the OO features are already available in CVF. Therefore many people _already_ are writing OOF!!
OOP was invented for being able to share code, and divide tasks without developers tripping all over each other across code and time. Granted most of this type of utillity is in large unbounded business applications, but you'd be surprised how much it can help engineering or scientific realm in terms of regaing lost productivity.
There is another reason for its usefulness: If you want to do OOP, you have to _think about the design of your program first_. I have seen far too many students start writing spaghetti code without looking more than 5 lines of code out. Whatever they do, would at best be a kluge useable by him/her only for the duration of their stay.
In the end, if anyone finds OOP difficult to use, they are not forced to do it.
Thanks. Rahzan. I found the OOP features in the CVF. It wasn't that explicit so I overlooked.