Course/Event Essentials
Event/Course Start
Event/Course End
Event/Course Format
Online
Live (synchronous)
Primary Event/Course URL
Training Content and Scope
Scientific Domain
Technical Domain
Level of Instruction
Intermediate
Advanced
Sector of the Target Audience
Research and Academia
Industry
Public Sector
HPC Profile of Target Audience
Application Developers
Language of Instruction
Other Information
Organiser
Supporting Project(s)
PRACE
Event/Course Description
This online course is targeted at scientists who wish to extend their knowledge of Fortran to cover advanced features of the language.
Topics covered include (still preliminary)
- Best Practices
- global objects and interfaces
- abstract interfaces and the IMPORT statement
- object based programming
- Object-Oriented Programming
- type extension, polymorphism and inheritance
- binding of procedures to types and objects
- generic type-bound procedures
- abstract types and deferred bindings
- IEEE features and floating point exceptions
- Interoperability with C
- mixed language programming patterns
- Fortran 2003 I/O extensions
- OO Design Patterns: application of object-oriented programming
- creation and destruction of objects
- polymorphic objects and function arguments
- interacting objects
- dependency inversion: submodules and plugins
- Coarrays
- PGAS concepts and coarray basics
- dynamic entities
- advanced synchronization
- parallel programming patterns
- recent enhancements: collectives, events, teams, atomic subroutines
- performance aspects of coarray programming
The course combines lectures and hands-on sessions.