The Queen's University of Belfast

Parallel Computer Centre
[Next] [Previous] [Top]
Languages
Languages
- Standard Compiled languages
- C
- C++
- GCC
- G++
- Fortran 77, G77
- Fortran 90
- HPF
- Source to source code restructuring
- HPF - Southampton Translator
- Fortran 77 to 90 Converter
- Adaptor
C
- C is the most common language used for systems programming on UNIX workstations.
- A powerful middle-level language as it enables high-level programming constructs to be used
- These constructs are used in conjunction with access to registers and memory locations
- provides C with a flexibility not available in other languages
- Added complexity increases the scope for programmer error
- Availability: Available from many sources both commercial and in the public domain.
C++
- C++ is an object-oriented superset of C introduced to provide the encapsulation and data abstraction facilities lacking in C
- C++ provides a reasonable implementation of the object-oriented concepts (encapsulation, inheritance, polymorphism).
- Availability: Available from many sources both commercial and in the public domain.
GCC and G++
- A generic version of C - not machine specific, doesn't contain any optimizations for a particular machine architecture
- GNU C provides ANSI standard C.
- "GCC" is a common shorthand term for the GNU C compiler.
- REFERENCE: http://www.ns.utk.edu/gnu/gnu.html
- The C, C++, and Objective C versions of the compiler are integrated; the GNU C compiler can compile programs written in C, C++, or Objective C.
FORTRAN - HISTORY
- Fortran (FORmula TRANslation system) - developed by IBM in 1954
- 1958 - second version which included subroutines, functions, common blocks.
- 1962 - Fortran IV was an attempt to standardize the language in order to work independent of the computer
- Fortran 66 - first standard in 1966, by the American National Standards Association
- Fortran 77 - a revised standard, released in 1978, providing extended features - removing the need for pre-processors
- Fortran 8x - ANSI began developing a new standard additional to rather than a replacement for Fortran 77.
- Fortran 90 - the third ANSI standard eventually released in 1991 which concentrated on language development.
- A new revision is expected within 10 years.
- HPF is the latest language that combines Fortran 90 with enhanced user defined data distribution.
FORTRAN 77
- The preferred programming language of scientists and engineers and has massive support across that community in terms of library support.
- The Fortran Market gives details for all products and services related to Fortran some of which are free
- http://www.fortran.com/fortran/market.html
- GNU Fortran (g77) - still being developed but f2c (a FORTRAN-to-C translator) and gcc (the GNU C compiler) may be used if g77 proves insufficient.
- f2c provides a free Fortran 77 compiler
- g77 is available now via anonymous ftp to prep.ai.mit.edu:/pub/gnu.
FORTRAN 90
- Fortran 90 is a superset of Fortran 77
- New facilities include:
- array operations - a new concise and powerful notation
- new methods for specifying precision
- free form
- dynamic arrays - called allocatable arrays
- the ability to define and manipulate user-defined data types.
- marks features which are to disappear in the next version as `obsolescent' etc
- Fortran90 is an extension of the FORTRAN standard to include features for large scale computing and data abstraction.
HPF
- HPF combines Fortran 90 with enhanced user defined data distribution
- HPF extends Fortran 90 in several areas
- Data distribution features - compiler able to arrange the computation to minimise communications but retain parallelism
- Data parallel execution features - offers a new statement, FORALL, and new directive, INDEPENDENT, to express parallel computation explicitly
- Extended intrinsic functions and standard library - added parallel operations.
- EXTRINSIC procedures - define an explicit interface to procedures written in other paradigms e.g. explicit message passing subroutine libraries.
- Changes in sequence and storage association.
[Next] [Previous] [Top]
All documents are the responsibility of, and copyright, © their authors and do not represent the views of The Parallel Computer Centre, nor of The Queen's University of Belfast.
Maintained by Alan Rea, email A.Rea@qub.ac.uk
Generated with CERN WebMaker