Das plusFORT Programm-Paket besteht aus mehreren sehr hilfreichen Utilities für die Wartung von Fortran Quellcode:
SPAG - “The Spaghetti Unscrambler” Die meist mühsame und zeitraubende Reorganisation von Fortran Programmen, insbesondere von “Spaghetti-Code” oder die Mühen einer manuellen Portierung erspart einem SPAG. Der “Spaghetti Unscrambler” ermöglicht eine strukturierte und logisch äquivalente Umformung des Fortran Quellcodes und kann auch vorteilhaft zur Programmdokumentation eingesetzt werden. SPAG zielt auf die Verbesserung der Lesbarkeit und die Vereinfachung der Wartung von Fortran Code. Für die Umwandlung von “Spaghetti-Code” in ein strukturiertes Programm verwendet SPAG einen iterativen Vereinfachungs-Algorithmus, der ein dem Input-Code äquivalentes Programm erzeugt. SPAG ist hinsichtlich verschiedener Aspekte (mehr als 100) konfigurierbar, z.B.:
So läßt sich bspw. ein Fortran 66 in ein Fortran
77-Programm oder in ein Fortran 90 konformes umformen (=>
Beispiele). HyperKWIC ist ein Werkzeug zur Generierung von Software
Dokumentation. Es kombiniert die unmittelbare Konnektivität von Hypertext
mit der analytischen Stärke von Schlüsselwortensuchmechanismen.
HyperKWIC erzeugt HTML Dokumente, die eine interaktive Alternative zu
herkömmlichen Dokumentation eröffnet.
GXCHK GXCHK ist ein Global Cross Check Tool, mit dem sich die Verwendung von Variablen, COMMONs, INCLUDE Dateien und PARAMETER in einem modularisiertem Programmsystem analysieren läßt (global static analysis). Dazu verwenden GXCHK die Symboltabellen, die zuvor von SPAG erzeugt worden sind und faßt die Information zu einem Bericht im HTML Format zusammen. Der Bericht kann dann in einem der üblichen Internet-Browser angezeigt werden und verfügt über Hyperlinks, um die Information in unterschiedlichen Persepektiven, jeweils entsprechend strukturiert, zu sichten. Im einzelnen sind dies:
Für Programmierer, die sich in ältere Programme einarbeiten sollen, sind Ansichten wie
ohne Zweifel eine große Hilfe sich in einem umbekannten Programmsystem zurecht zu finden. Aber auch für Programmentwickler, die umfangreiche Programmsystem zu warten haben, sind die Berichte über bspw. undefinierte Variablen, Inkonsistenzen von Unterprogrammaufrufen und COMMON-Block-Differenzen sehr hilfreich. Cluster Analysis Matrix - zeigt Unterprogrammgruppen, die auf der Basis der Datennutzung und der Aufrufmuster Kanditaten zur Zusammenfassung in MODULEn sind. Auf YouTube existiert dazu ein Video: "Global
Static Analysis of a Fortran Program using plusFORT". Dynamic Analysis Option Compiler und auch GXCHK arbeiten statisch,
d.h. Analysen werden am Quellcode ausgeführt. Bestimmte Laufzeitfehler
können so allerdings nicht festgestellt werden. Dem Manko kann mit der
Dynamic Analysis Option begegnet werden. Es ist mit plusFORT möglich in
einem Programm sogenannten Check-Code (probes) automatisch zu “implantieren”,
der die Verwendung von bestimmten Variablen während der Laufzeit überwacht
und ein Protokoll darüber in einer Datei ablegt, die dann späteren Analysezwecken
dient. CVRANAL Coverage Analysis untersucht u.a., ob jede
Quellcodezeile in einem Programm auch ausgeführt wird, wie oft Prozeduren
gerufen werden, die Zeit, die der Programmlauf in diesen Prozeduren verbringt.
Zur Demonstration findet sich auf YouTube
ein Video: QMERGE QMERGE dient der Kontrolle von Programmen, die in verschiedenen Versionen vorliegen, bspw. als Version für PC, VAX oder IBM MVS-Programm. Der Quellcode aller Versionen kann komplett in einem Programm vorliegen und QMERGE generiert aufgrund von Steuervariablen und Metakommandos, z.B. * -
IF IBMPC den versions-spezifischen Fortran-Quellcode,
der anschließend normal compiliert werden kann. AUTOMAKE AUTOMAKE ist ein MAKE-Utility, daß der automatisierten Compilierung von Programmteilen eines Programmprojektes dient. Bspw. hat man ein Programm, das aus vielen in separaten Dateien abgelegten, SUBROUTINEs besteht, die aufgrund einer Änderung eines INCLUDE-Files, das in mehreren dieser SUBROUTINEs verwendet wird, neu kompiliert werden müssen. AUTOMAKE prüft, ob das betreffende INCLUDE-File in der SUBROUTINE verwendet wird und compiliert diese gegebenenfalls. AUTOMAKE hat gegenüber vielen anderen MAKE-Utilities den Vorteil, daß es den MAKE-File sozusagen selbst generiert. D.h., man ist nicht mehr genötigt die Quellcode-Abhängigkeiten innerhalb eines Programm-Projekts selbst herauszufinden, sondern spezifiziert in einem AUTOMAKE-File lediglich die zum Programm-Projekt zugehörigen Dateinamen und deren Compile- und Link-Kommandos. Lizenzsierung plusFORT ist für PC unter Linux, MacOSX und
Windows verfügbar. Für den nicht-kommerziellen Gebrauch in Forschung,
Lehre und zu privaten Zwecken sind vom Hersteller kostenlose Lizenzen
erhältlich. Dokumentation Die Online-Dokumentation wird in englischer Sprache geliefert.
|
||||||||||||||||||||||||||||||
Lieferumfang, Systemanforderungen etc. |
||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||
Hinweise zu Haftung & Urheberrecht bzgl. der Information auf dieser WebSeite. Copyright QT software GmbH 2024. Alle Rechte vorbehalten. |