The Fortran Programming Language#
High-performance parallel programming language
Fortran has been designed from the ground up for computationally intensive applications in science and engineering. Mature and battle-tested compilers and libraries allow you to write code that runs close to the metal, fast.
Statically and strongly typed
Fortran is statically and strongly typed, which allows the compiler to catch many programming errors early on for you. This also allows the compiler to generate efficient binary code.
Easy to learn and use
Fortran is a relatively small language that is surprisingly easy to learn and use. Expressing most mathematical and arithmetic operations over large arrays is as simple as writing them as equations on a whiteboard.
Fortran allows you to write code in a style that best fits your problem: imperative, procedural, array-oriented, object-oriented, or functional.
Fortran is a natively parallel programming language with intuitive array-like syntax to communicate data between CPUs. You can run almost the same code on a single CPU, on a shared-memory multicore system, or on a distributed-memory HPC or cloud-based system. Coarrays, teams, events, and collective subroutines allow you to express different parallel programming patterns that best fit your problem at hand.
What is the status of Fortran?
Fortran is mature and under active development. The latest revision of the language is Fortran 2023. There are over a dozen open source and proprietary Fortran compilers. Further, open source projects like the Standard Library and the Fortran Package Manager are under active development.
What is Fortran used for?
Fortran is mostly used in domains that adopted computation early–science and engineering. These include numerical weather and ocean prediction, computational fluid dynamics, applied math, statistics, and finance. Fortran is the dominant language of High Performance Computing and is used to benchmark the fastest supercomputers in the world.
Should I use Fortran for my new project?
If you’re writing a program or a library to perform fast arithmetic computation over large numeric arrays, Fortran is the optimal tool for the job.
Subscribe to our mailing list to discuss anything Fortran related, announce Fortran projects, discuss development of core fortran-lang.org projects (stdlib, fpm), and get the latest news.
Join the discussion about all things Fortran on the fortran-lang discourse.
RSS clients can follow the RSS feed.
Contribute code, report bugs and request features at GitHub.
Make Fortran better
Have an idea about how to improve the language? You can write new proposals or contribute to existing proposals to the Fortran Standard Committee on GitHub.