  This paper presents a comparative study to evaluate and compare Fortran with
the two most popular programming languages Java and C++. Fortran has gone
through major and minor extensions in the years 2003 and 2008. (1) How much
have these extensions made Fortran comparable to Java and C++? (2) What are the
differences and similarities, in supporting features like: Templates, object
constructors and destructors, abstract data types and dynamic binding? These
are the main questions we are trying to answer in this study. An
object-oriented ray tracing application is implemented in these three languages
to compare them. By using only one program we ensured there was only one set of
requirements thus making the comparison homogeneous. Based on our literature
survey this is the first study carried out to compare these languages by
applying software metrics to the ray tracing application and comparing these
results with the similarities and differences found in practice. We motivate
the language implementers and compiler developers, by providing binary analysis
and profiling of the application, to improve Fortran object handling and
processing, and hence making it more prolific and general. This study
facilitates and encourages the reader to further explore, study and use these
languages more effectively and productively, especially Fortran.
