I used to do a lot of FORTRAN programming. I found it very useful for mathematically rich programs. Also, I took full advantage of capabilities that real programmers said were the reason FORTRAN was (and presumably still is) a bad language. I would use the "equivalence" statement, for instance, to assign the same memory space to character, and a number; things like that.
I never learned C but it was heralded by some of my fellows as the best of both FORTRAN and Assembler in that it could do everything FORTRAN could and build drivers, too.
Java does math like C does; that is, not as well as FORTRAN. On the other hand, it's much more structured than FORTRAN, which is universally held to be a good thing. Furthermore, unlike both C and FORTRAN, Java is an object-oriented language. I suppose in the strictest sense, this means that it is harder to write procedural code in Java than it is to write OO code. Likewise, it's theoretically possible to write OO code in FORTRAN although the language in no way makes it easy. The best thing about any language, in my opinion, is that you can use it. That means you can speak it and that it's understood by some platform. Java is understood by most platforms with no investment on the part of the programmer or user so that makes it pretty useful.
Bob Rashkin
rrashkin@csc.com