Fortran
Was ist FORTRAN?
FORTRAN ist eine kompilierte Programmiersprache, die vor allem für numerische Berechnungen, wissenschaftliche Simulationen und Hochleistungsrechnen eingesetzt wird. Der Name leitet sich von „Formula Translation“ ab. Die Sprache verarbeitet insbesondere große Zahlenfelder effizient und wird bis heute in Forschung, Ingenieurwesen, Wettermodellen und technischen Bestandsanwendungen verwendet.
Was bedeutet FORTRAN?
FORTRAN wurde ursprünglich entwickelt, um mathematische Formeln in eine für Computer ausführbare Form zu übersetzen. Die Sprache entstand bei IBM unter der Leitung von John Backus und wurde erstmals 1957 für den IBM 704 veröffentlicht. Sie zählt damit zu den ältesten höheren Programmiersprachen, die weiterhin produktiv eingesetzt werden.
Der Begriff war zunächst eine Abkürzung für „Formula Translation“. Historische Versionen werden überwiegend in Großbuchstaben geschrieben, etwa FORTRAN 66 und FORTRAN 77. Bei modernen Sprachfassungen ist die Schreibweise „Fortran“ üblich. In diesem Glossar wird die Großschreibung verwendet, um den Begriff eindeutig hervorzuheben.
Eine höhere Programmiersprache abstrahiert technische Details des Prozessors und ermöglicht Quellcode, der sich mit geeigneten Compilern auf unterschiedlichen Systemen übersetzen lässt. Vor dieser Abstraktion mussten viele Programme unmittelbar in Maschinen- oder Assemblersprache für eine bestimmte Rechnerarchitektur geschrieben werden.
Wie funktioniert die Programmiersprache?
FORTRAN-Quellcode wird üblicherweise in Dateien mit Endungen wie .f, .for, .f90 oder .f95 gespeichert. Ein Compiler übersetzt den Quellcode in Maschinencode oder eine ausführbare Programmdatei. Ein verbreiteter frei verfügbarer Compiler ist GNU Fortran, dessen Kommando üblicherweise gfortran lautet.
Die Sprache unterstützt Variablen, Datentypen, Schleifen, Verzweigungen, Funktionen, Unterprogramme und Module. Moderne Fassungen bieten außerdem objektorientierte Sprachelemente, parallele Programmierung, dynamische Speicherverwaltung und Schnittstellen zu C.
Eine charakteristische Stärke liegt in der Verarbeitung mehrdimensionaler Arrays. Arrays sind geordnete Datenfelder, die beispielsweise Messwerte, Matrizen oder räumliche Simulationsdaten speichern. Ihre Indizierung beginnt standardmäßig bei 1, kann im Quellcode jedoch mit anderen Unter- und Obergrenzen definiert werden.
program beispiel; implicit none; real :: a, b; a = 4.0; b = 5.0; print *, a * b; end program beispiel. Der Compiler übersetzt diese Anweisungen in ein ausführbares Programm, das die Werte multipliziert und das Ergebnis 20 ausgibt.Welche Sprachelemente sind typisch?
Moderner Quellcode nutzt häufig die Anweisung implicit none. Sie verlangt eine ausdrückliche Deklaration der Variablen und verhindert, dass der Compiler Variablentypen allein aus dem ersten Buchstaben eines Namens ableitet. Dadurch werden Tippfehler und schwer erkennbare Rechenfehler früher sichtbar.
Module verbessern die Struktur größerer Anwendungen, weil sie die Sichtbarkeit von Variablen und Prozeduren steuern und explizite Schnittstellen bereitstellen. Funktionen und Subroutinen werden in modernem Code deshalb bevorzugt innerhalb von Modulen organisiert.
Welche FORTRAN-Versionen gibt es?
Die Sprache wurde über mehrere Jahrzehnte standardisiert und erweitert. Alte Programme folgen teilweise Konventionen, die sich deutlich von modernem Quellcode unterscheiden. Dazu gehören feste Spaltenpositionen, numerische Sprungmarken und umfangreiche GOTO-Strukturen.
| Version | Einordnung | Typische Neuerungen oder Merkmale |
|---|---|---|
| FORTRAN 66 | Früher standardisierter Dialekt | Grundlegende Kontrollstrukturen und mathematische Berechnungen |
| FORTRAN 77 | Weit verbreitete Bestandsversion | Strukturierte Schleifen, Zeichenketten und verbesserte Ein-/Ausgabe |
| Fortran 90/95 | Grundlage moderner Sprachfassungen | Freies Quellcodeformat, Module, Array-Operationen und dynamischer Speicher |
| Fortran 2003/2008 | Erweiterte moderne Standards | Objektorientierung, C-Anbindung, Parallelisierung und Coarrays |
| Fortran 2018/2023 | Aktuelle Sprachgeneration | Präzisierungen sowie erweiterte Möglichkeiten für Interoperabilität und parallele Anwendungen |
Der derzeit veröffentlichte internationale Sprachstandard ist ISO/IEC 1539-1:2023. Er erschien im November 2023; im Januar 2026 wurde ein technisches Korrigendum veröffentlicht. Eine weitere Überarbeitung befindet sich bereits im Normungsprozess.
Die Unterstützung eines Standards hängt vom verwendeten Compiler und dessen Version ab. GNU Fortran kann beispielsweise mit Optionen wie -std=f2018 oder -std=f2023 prüfen, ob ein Programm die Regeln der gewählten Sprachfassung einhält. Erweiterungen einzelner Compiler können die Übertragbarkeit auf andere Systeme einschränken.
Wofür wird FORTRAN verwendet?
FORTRAN wird vor allem für rechenintensive Aufgaben eingesetzt, bei denen große Mengen numerischer Daten verarbeitet werden. Typische Einsatzgebiete sind Wetter- und Klimamodelle, Strömungsmechanik, Materialforschung, Astrophysik, Geophysik, Statistik, Finanzmodelle und technische Simulationen.
Viele wissenschaftliche Anwendungen bestehen aus über Jahrzehnte entwickelten Bibliotheken. Eine vollständige Neuentwicklung in einer anderen Sprache wäre teuer und könnte neue numerische Abweichungen verursachen. Bestehender Code wird deshalb häufig schrittweise modernisiert, getestet und über Schnittstellen mit C, C++ oder Python verbunden.
Die Sprache eignet sich besonders für Berechnungen mit Vektoren und Matrizen. Compiler können klar strukturierte Schleifen und Array-Operationen optimieren, vektorisieren oder auf mehrere Prozessorkerne verteilen. Die tatsächliche Geschwindigkeit hängt jedoch ebenso vom Algorithmus, Compiler, Speicherzugriff und Zielsystem ab.
Wie unterscheidet sich FORTRAN von anderen Sprachen?
Der Unterschied zu allgemeinen Websprachen liegt im primären Einsatzgebiet. FORTRAN wurde für mathematisch-numerische Berechnungen konzipiert, während Sprachen wie JavaScript vor allem interaktive Webanwendungen unterstützen. Für die Darstellung einer Website im Browser ist FORTRAN daher normalerweise ungeeignet.
Gegenüber Python bietet kompilierter Code häufig eine direkte und kontrollierbare Ausführung numerischer Schleifen. Python besitzt dafür ein breites Ökosystem und eine leicht zugängliche Syntax. In wissenschaftlichen Systemen werden beide Ansätze kombiniert: Python steuert Arbeitsabläufe, während kompilierte Bibliotheken rechenintensive Aufgaben übernehmen.
Die Ähnlichkeit mit C beschränkt sich auf einige grundlegende Programmierkonzepte. Beide Sprachen werden kompiliert, unterscheiden sich jedoch unter anderem bei Array-Speicherung, Syntax und Standardbibliotheken. Die standardisierte C-Interoperabilität ermöglicht den kontrollierten Austausch von Funktionen und Daten.
Welche Bedeutung hat FORTRAN für SEO, SEA und GEO?
FORTRAN ist kein direkter Ranking-Faktor und beeinflusst weder organische Rankings noch Anzeigenauktionen. Ein Bezug zu SEO entsteht, wenn Unternehmen Dokumentationen, Quellcode, Forschungsergebnisse, technische Produkte oder Dienstleistungen für Entwickler und Ingenieure veröffentlichen.
Technische Inhalte sollten alternative Schreibweisen und Suchintentionen berücksichtigen. Dazu gehören Suchanfragen wie „FORTRAN Compiler“, „Fortran Tutorial“, „Fortran 77“, „gfortran“ oder „Fortran programmieren“. Eine systematische Keyword-Recherche für technische Themen trennt Grundlagenfragen von Suchanfragen nach Software, Dokumentationen oder Dienstleistungen.
Für GEO, die Generative Engine Optimization, sind eindeutige Definitionen, Versionsangaben und nachvollziehbare Codebeispiele hilfreich. KI-Systeme können klar abgegrenzte Aussagen leichter extrahieren und bestimmten Entitäten zuordnen. Veraltete Sprachfassungen sollten dabei ausdrücklich als historisch oder als Bestandteil einer Bestandsanwendung gekennzeichnet werden.
SEA-Kampagnen für Compiler, Schulungen oder Entwicklungsleistungen benötigen eine klare Trennung zwischen Informations- und Kaufabsicht. Allgemeine Definitionssuchen erzeugen häufig Informationsbesuche, während Begriffe wie „Entwickler beauftragen“ oder „Compiler Support“ eine konkretere kommerzielle Absicht erkennen lassen. Passende Strukturen lassen sich in einem Google-Ads-Konzept für erklärungsbedürftige Leistungen abbilden.
Typische Fehler bei alten Programmen
Die Modernisierung älterer Anwendungen beginnt mit einer reproduzierbaren Übersetzung und fachlichen Tests. Erst danach sollten Kontrollstrukturen, Datentypen, Ein-/Ausgabe und Module schrittweise überarbeitet werden. Ein erfolgreich ausgeführter Compilerlauf allein beweist noch nicht, dass alle numerischen Ergebnisse fachlich korrekt sind.
Fragen zur Sichtbarkeit technischer Inhalte und erklärungsbedürftiger Leistungen kannst du in einer kostenlosen Erstberatung zu SEO, SEA und GEO einordnen lassen.
Kostenlose ErstberatungHäufige Fragen zur Programmiersprache FORTRAN
Ist FORTRAN heute noch aktuell?
Ja. Die Sprache wird weiterhin standardisiert und vor allem für wissenschaftliche Simulationen, numerische Bibliotheken und Hochleistungsrechnen eingesetzt. Daneben existieren umfangreiche ältere Anwendungen, die weiterhin gepflegt werden.
Ist FORTRAN schwer zu lernen?
Die Grundlagen moderner Sprachfassungen sind für Programmierer vergleichsweise überschaubar. Schwieriger sind häufig die mathematischen Verfahren, parallelen Rechenmodelle und historischen Konventionen umfangreicher Bestandsprogramme.
Was ist gfortran?
gfortran ist der Compiler für GNU Fortran und Bestandteil der GNU Compiler Collection. Er übersetzt Quellcode in ausführbare Programme und unterstützt mehrere historische sowie moderne Sprachstandards.
Kann FORTRAN mit Python kombiniert werden?
Ja. Python kann Funktionen aus kompilierten Bibliotheken aufrufen. Dadurch lässt sich eine leicht zugängliche Benutzeroberfläche mit rechenintensiven numerischen Routinen verbinden.
Warum beginnen Arrays häufig mit dem Index 1?
Die standardmäßige Untergrenze eines Arrays ist 1, weil diese Konvention in mathematischen und wissenschaftlichen Anwendungen verbreitet ist. Entwickler können für einzelne Dimensionen jedoch andere Indexgrenzen festlegen.
Sie haben noch Fragen?







