The Fortran Programming Language#

Fortran
High-performance parallel programming language

Features

High performance

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.

Versatile

Fortran allows you to write code in a style that best fits your problem: imperative, procedural, array-oriented, object-oriented, or functional.

Natively parallel

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.

FAQ

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.

Join us!

Mailing list

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.

Discourse

Join the discussion about all things Fortran on the fortran-lang discourse.

Twitter

RSS feed

RSS clients can follow the RSS feed.

Open source

Contribute code, report bugs and request features at GitHub.

Make Fortran better

Write proposals

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.

Develop tools

You can also help make Fortran better by contributing to its suite of tools, such as Standard Library, Package Manager, this website.

Write Fortran software

Or just write Fortran software for your research, business, or schoolwork. You can learn how to get started here.