So konvertieren Sie Fortran in Visual Basic

Fortran war die erste prozedurale Programmiersprache der Welt und brachte eine ganze Reihe von Verbesserungen in der Kunst und Wissenschaft des Programmierens mit sich. Es machte es einfacher denn je, mathematische Ideen in Maschinensprache zu übersetzen. Seit seiner Veröffentlichung im Jahr 1957 sind jedoch viele andere Sprachen in den Vordergrund gerückt, und sie wurde nur für begrenzte Zwecke verwendet. Visual Basic ist eine Programmiersprache, die auf dem Betriebssystem und den Programmen von Microsoft weit verbreitet ist. Daher ist die Integration von Visual Basic-Code oft viel einfacher als die Integration von Fortran-Code. Aus diesem Grund kann es nützlich sein, alte Fortran-Programme in Visual Basic zu übersetzen, um die zukünftige Wartbarkeit zu fördern.

Schritt 1

Öffnen Sie Microsoft Visual Basic .NET und erstellen Sie ein neues Befehlszeilenprojekt. Es sollte ein Fenster erscheinen, das das Hauptunterprogramm des Programms zeigt.

Schritt 2

Öffnen Sie den Fortran-Quellcode. Beginnen Sie mit der Übersetzung der Unterprogramme im Fortran-Programm. Fortran-Unterprogramme sehen so aus:

SUBROUTINE mySubroutine(a, b, c) REAL :: a, b, c END SUBROUTINE

Dieselbe Unterroutine in Visual Basic würde so aussehen:

Sub mySubroutine(a als Double, b als Double, c als Double) End Sub

Wie Sie sehen, ändert sich der Anfangs- und Endcode nicht wesentlich, aber REAL wird zu Double und wird auf jedes Argument einzeln angewendet, anstatt auf alle gleichzeitig.

Schritt 3

Konvertieren Sie die Funktionen in Ihrem Programm. In Fortran sieht eine Funktion so aus:

INTEGER FUNCTION plus(a, b) INTEGER :: a, b plus = a + b END FUNCTION plus

Die gleiche Funktion in VB.NET würde so aussehen:

Funktion plus(a As Integer, b As Integer) As Integer Rückgabe a + b End Function

Der Rückgabetyp, der in Fortran vor dem Schlüsselwort FUNCTION ausgedrückt wird, kommt am Ende der Funktionszeile in Visual Basic, und die Argumenttypen wandern aus dem Funktionsrumpf in die Funktionszeile (genau wie bei Unterroutinen). Der Rückgabewert, der in Fortran als Zuweisungsanweisung (mit '=') ausgedrückt wird, deren linker Wert der Name der Funktion selbst ist, wird in VB.NET mit der Return-Anweisung (ohne Gleichheitszeichen) ausgedrückt.

Schritt 4

Übersetzen Sie alle im Fortran-Code verwendeten Bibliotheksfunktionen in ihre Entsprechungen in Visual Basic. Sowohl Fortran als auch VB verfügen über umfangreiche Funktionsbibliotheken. Sie können die Funktionen der Visual Basic-Bibliothek nachschlagen, indem Sie die Visual Basic-Referenz des Microsoft Developer Network unter http://msdn.microsoft.com/en-us/library/sh9ywfdk.aspx aufrufen

Sie werden möglicherweise feststellen, dass einige der Bibliotheksfunktionen keine direkten Entsprechungen haben – jede Sprache hat andere Stärken und Schwächen. In diesem Fall müssen Sie Ihre eigene Visual Basic-Funktion schreiben, um das Verhalten der Fortran-Funktion zu reproduzieren. Um sicherzustellen, dass Sie das Verhalten der Fortran-Funktion verstehen und genau wiedergeben, lesen Sie bitte die Fortran-Dokumentation. Sie können die Fortran-Dokumentation von Intel unter http://www.intel.com/software/products/compilers/techtopics/for_prg.htm herunterladen

Wenn Sie mit der Konvertierung Ihres Programms fertig sind, stellen Sie sicher, dass Sie es mit dem Fortran-Programm testen. Führen Sie die Programme Fortran und Visual Basic für dieselbe Eingabe aus, und stellen Sie sicher, dass sie dasselbe Ergebnis liefern. Testen Sie so viele verschiedene Eingaben, wie Sie sich vorstellen können, um sicherzustellen, dass das konvertierte Programm dem alten Programm treu geblieben ist.