On parallel object oriented programming in Fortran 90

1996 ◽  
Vol 4 (1) ◽  
pp. 27-31 ◽  
Author(s):  
Charles D. Norton ◽  
Viktor K. Decyk ◽  
Boleslaw K. Szymanski
Author(s):  
Hans Fehr ◽  
Fabian Kindermann

Before diving into the art of solving economic problems on a computer, we want to give a short introduction into the syntax and semantics of Fortran 90. As describing all features of the Fortran language would probably fill some hundred pages, we concentrate on the basic features that will be needed to follow the rest of this textbook. Nevertheless, there are various Fortran tutorials on the Internet that can be used as complementary literature. Fortran is pretty old; it is actually considered the first known higher programming language. Going back to a proposal made by John W. Backus, an IBM programmer, in 1953, the term Fortran is derived from The IBM Formula Translation System. Before the release of the first Fortran compiler in April 1957, people used to use assembly languages. The introduction of a higher programming language compiler tremendously reduced the number of code lines needed to write a program. Therefore, the first release of the Fortran programming language grew pretty fast in popularity. From 1957 on, several versions followed the initial Fortran version, namely FORTRAN II and FORTRAN III in 1958, and FORTRAN IV in 1961. In 1966, the American Standards Association (now known as the ANSI) approved a standardized American Standard Fortran. The programming language defined on this standard was called FORTRAN 66. Approving an updated standard in 1977, the ANSI paved the way for a new version of Fortran known as FORTRAN 77. This version became popular in computational economics during the late 80s and early 90s. More than 13 years later, the Fortran 90 standard was released by both the International Organization for Standardization (ISO) and ANSI consecutively. With Fortran 90, the fixed format standard was exchanged by a free format standard and, in addition, many new features like modules, recursive procedures, derived data types, and dynamic memory allocation made the language much more flexible. From Fortran 90 on, there has only been one major revision, in 2003, which introduced object oriented programming features into the Fortran language. However, as object-oriented programming will not be needed and Fortran 90 is by far the more popular language, we will focus on the 1990 version in this book.


2015 ◽  
Vol 2015 ◽  
pp. 1-7
Author(s):  
Karla Morris

Although the high-performance computing (HPC) community increasingly embraces object-oriented programming (OOP), most HPC OOP projects employ the C++ programming language. Until recently, Fortran programmers interested in mining the benefits of OOP had to emulate OOP in Fortran 90/95. The advent of widespread compiler support for Fortran 2003 now facilitates explicitly constructing object-oriented class hierarchies via inheritance and leveraging related class behaviors such as dynamic polymorphism. Although C++ allows a class to inherit from multiple parent classes, Fortran and several other OOP languages restrict or prohibit explicit multiple inheritance relationships in order to circumvent several pitfalls associated with them. Nonetheless, what appears as an intrinsic feature in one language can be modeled as a user-constructed design pattern in another language. The present paper demonstrates how to apply the facade structural design pattern to support a multiple inheritance class relationship in Fortran 2003. The design unleashes the power of the associated class relationships for modeling complicated data structures yet avoids the ambiguities that plague some multiple inheritance scenarios.


Sign in / Sign up

Export Citation Format

Share Document