Seminars 2012

High-performance computing user surveys indicate that Fortran remains the dominant language for scientific computing. The language owes its past and current success in part to the existence of trusted codes, a feature set aimed at high performance, and rich mathematical intrinsics, including multi-dimentional array programming with automatic memory management. Unbeknownst to most outside the Fortran community and even many inside it, successive international standards have evolved Fortran into a modern language with explicit support for multiple programming paradigms, including functional, object-oriented, generic, and parallel programming. After a brief overview of Fortran’s support for each of the aforementioned programming paradigms, this talk will present case studies on the use of each paradigm in several open-source library and application development projects. The results demonstrate the expressiveness of modern Fortran for modeling high-level mathematical and physical concepts using distributed-memory, parallel data structures and algorithms without reliance on libraries external to the language.

Domain engineering is providing the understanding of natural, technical and human phenomena in software related terms. Such a formulation may give genuine insight in the phenomena themselves, but also forms the basis for developing software product lines (SPL). SPL has been shown to significantly (up to a factor of 10) improve software quality and development efficiency, reducing the development cycle from months to weeks.

Dines Bjørner has been working at IBM (1960s & 70s), Technical University of Denmark (1976 onwards), was founding director of UNU-IIST (Macau CN, 1992-1997), and has had numerous guest lecture and research stays all over the world. He has been central in the development of VDM and Raise, and has worked on PL/1 and Ada semantics and tools. The last couple of decades his interest has switched to domain science and engineering.