COBOL

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
COBOL
Paradigmen: Zunächst rein imperativ, später erweitert um Elemente der strukturierten, prozeduralen und heutzutage sogar objektorientierten Programmierung
Erscheinungsjahr: 1959
Entwickler: Grace Hopper, William Selden, Gertrude Tierney, Howard Bromberg, Howard Discount, Vernon Reeves, Jean E. Sammet
Aktuelle Version: COBOL 2002  (2002)
Typisierung: stark, statisch
Wichtige Implementierungen: Open COBOL, von Micro Focus das Eclipse-Plugin Micro Focus Net Express, und viele andere
Dialekte: DEC COBOL, HP COBOL, IBM OS/VS COBOL, IBM COBOL/II, IBM COBOL SAA, IBM Enterprise COBOL, IBM COBOL/400, IBM ILE COBOL, Unix COBOL X/Open, Micro Focus COBOL, Microsoft COBOL, Ryan McFarland RM/COBOL, Ryan McFarland RM/COBOL-85, DOSVS COBOL, UNIVAC COBOL, Realia COBOL, Fujitsu COBOL, ACUCOBOL-GT
Beeinflusst von: FLOW-MATIC, COMTRAN
Beeinflusste: PL/I, PL/SQL, ABAP
Betriebssystem: z/OS, Windows, Linux, Mac OS X, BS2000, OS/400 uvm.

COBOL ist eine Programmiersprache, die in der Frühzeit der Computerentwicklung, Ende der 1950er-Jahre, entstand und bis heute verwendet wird. Der Stil dieser Programmiersprache ist stark an die natürliche Sprache angelehnt.

Die Abkürzung COBOL steht für „Common Business Oriented Language“.

Geschichte[Bearbeiten]

COBOL entstand aus dem dringenden Wunsch, eine hardware-unabhängige standardisierte problemorientierte Sprache für die Erstellung von Programmen für den betriebswirtschaftlichen Bereich zu haben. Die Programmierung kaufmännischer Anwendungen unterscheidet sich von technisch-wissenschaftlichen Anwendungen durch die Handhabung großer Datenmengen statt der Ausführung umfangreicher Berechnungen. Nachdem die Programmierung technisch-wissenschaftlicher Anwendungen durch FORTRAN bereits sehr vereinfacht worden war, sollte die neue Programmiersprache die stärkere Berücksichtigung kaufmännischer Problemstellungen, insbesondere der Handhabung großer Datenmengen und ihrer Ein- und Ausgabe erreichen, die bis dahin weitgehend in Assemblersprachen programmiert wurden.

Eine vom amerikanischen Verteidigungsministerium eingesetzte Arbeitsgruppe entwickelte einen Standard aus der Verbindung der damaligen Programmiersprachen FLOW-MATIC von Sperry Univac (Remington-Rand), Commercial Translator (COMTRAN) von IBM und FACT von Minneapolis-Honeywell. Namentlich beteiligt hieran war Grace M. Hopper.

Das Ergebnis wurde 1960 als COBOL-60 von CODASYL verabschiedet, in der Folgezeit weiterentwickelt und von nationalen und internationalen Normierungsinstituten (ANSI, ISO) standardisiert.

COBOL fand schnell den Weg in die zivile Nutzung als eine der ersten kommerziell eingesetzten kompilierbaren Programmiersprachen und ist bis heute eine der am weitesten verbreiteten für kaufmännische Anwendungen.

Sprachsyntax[Bearbeiten]

Ursprünglich wurde COBOL nur in Großbuchstaben geschrieben (man hatte nur Lochkarten und Zeilendrucker ohne Kleinbuchstaben). Auch heute wird nicht zwischen Groß- und Kleinschreibung unterschieden (COBOL ist somit case insensitive).

Ein COBOL-Programm ist in Teile (DIVISION), Kapitel (SECTION) und Abschnitte (PARAGRAPH) gegliedert.

Die vier DIVISIONs sind in ihrer festgelegten Reihenfolge:

  • Identification Division mit dem Programmnamen und einigen weitgehend obsoleten Paragraphen für Kommentare;
  • Environment Division, wo Schnittstellen zum Betriebs- und dessen Dateisystem definiert werden;
  • Data Division mit der Definition der Programmvariablen und Datenstrukturen und
  • Procedure Division mit den prozeduralen Anweisungen.

In der IDENTIFICATION DIVISION gibt es keine SECTIONs, und in der PROCEDURE DIVISION können neuerdings SECTIONs und auch PARAGRAPHs entfallen. ENVIRONMENT und DATA DIVISIONs können unter Umständen ganz entfallen.

Hieran sieht man die strikte Trennung von Datendeklaration und prozeduralen Anweisungen, durch die sich COBOL auszeichnet. Im Prozedurteil kann man nur Variablen benutzen, die vorher im Datenteil deklariert worden sind. Auch das Aussehen von formatierten Ausgaben wird nicht im Prozedurteil, sondern im Datenteil durch die PICTURE-Klausel festgelegt. Der REPORT WRITER macht es möglich, die Struktur einer Druckliste komplett im Datenteil als physische Struktur von Seiten und logische Struktur von Postenzeilen mit Gruppensummen etc. zu beschreiben, ohne dass sich der Prozedurteil darum kümmern muss.

Kodierung[Bearbeiten]

Das traditionelle Kodierschema bei COBOL entspricht der Lochkarte mit ihren 80 Spalten, d. h. Schreibstellen. Dabei waren die ersten 6 Stellen für die Zeilennummerierungen reserviert. Spalte 7 wurde zur Kennzeichnung einer Kommentar- oder einer Fortsetzungszeile beziehungsweise einer, die nur für das Debugging übersetzt werden soll, reserviert. Spalte 8 bis 11 (Area A) beinhaltete die Namen von Divisions, Sections und Paragraphs. Die 12. bis 72. Spalte (Area B) beherbergten alles übrige, zum Beispiel Anweisungen (statements). Spalte 73 bis 80 waren für sonstige Markierungen wie z. B. den Namen des Programms oder Quelltext-Elementen vorgesehen.

Der aktuelle Standard (2002) kennt ein fixes Zeilenformat, das die Einteilung in Area A und Area B aufhebt, sowie ein ganz freies Format, das in den Spalten 1 bis 255 alles erlaubt. Die Sonderrolle der Spalte 7 entfällt, da Kommentare mit *> eingeleitet, Fortsetzungszeilen mittels & zusammengesetzt und Debuggingzeilen mittels bedingter Übersetzung realisiert werden (>>DEFINE … >>IF …).

Ein fast minimales COBOL-Programm:

        Identification Division.
        Program-ID. HALLOPGM.
        Procedure Division.
            Display "Hallo Wikipedianer!"
            STOP RUN.

Datendeklarationen[Bearbeiten]

… erfolgen in der Data Division

  • Dateien und deren Satzstrukturen werden in der File Section beschrieben.
  • Statische (globale) Variablen werden in der Working-Storage Section definiert.
  • Automatische (lokale bzw. dynamische) Variablen werden in der Local-Storage Section definiert. (siehe Stack)
  • Aufruf-Parameter werden in der Linkage Section definiert.
  • Komplexe Drucklisten werden in der Report Section definiert.
  • Bildschirmein- und ausgabe in der Screen Section.

Zur Deklaration von Variablen bietet COBOL zahlreiche Klauseln, deren wichtigsten die Stufennummer, die PICTURE-Klausel und die USAGE-Klausel sind.

Die Stufennummer 77 kennzeichnet eine frei stehende Variable. Die Stufennummer 01 kann ebenfalls eine freistehende Variable bezeichnen, leitet aber normalerweise die Deklaration einer Gruppe ein, was in anderen Sprachen als Record (Pascal u. ä.) oder struct (C++, C u. ä.) bezeichnet wird. Die Stufennummern 02 bis 49 kennzeichnen dann dieser Gruppe untergeordnete Datendeklarationen, die selber auch wieder Gruppen (Records) sein können. Eine Datendeklaration, die keine weiteren untergeordneten (mit höheren Stufennummern) Datendeklarationen hat, wird in COBOL als elementar (elementary Item) bezeichnet, ansonsten ist es eine Gruppen-Variable (Group Item). Eine solche Gruppe kann man abstrakt als Baum darstellen; mit den Gruppen als Knoten und den elementary Items als Blättern – denen über die PIC-Klausel Datenformate zugeordnet sind.

Mit der speziellen Stufennummer 66 kann man ganzen Speicherbereichen einen anderen Namen geben, mit 88 einen Bedingungsnamen definieren, der wie ein boolescher Ausdruck in zum Beispiel einer IF-Anweisung verwandt werden kann.

Die Stufennummern werden üblicherweise zweistellig geschrieben. Aus den Lochkartenzeiten stammt die Gewohnheit, die Stufennummern in einer Gruppendefinition nicht fortlaufend, sondern in Schritten von 5 oder 10 zu vergeben, weil man dann Zwischenstufen einfügen konnte, ohne gleich einen ganzen Kartenstapel neu lochen zu müssen.

Das folgende Beispiel beschreibt das Layout der traditionellen 80-stelligen COBOL-Programmzeile:

  01  Cobol-Zeile USAGE DISPLAY.
      05  Zeilennummer        PIC 9(6).
      05  Indikator           PIC X.
          88  Ist-Kommentar         VALUES '*' '/'.
          88  Ist-Fortsetzungszeile VALUE '-'.
          88  Ist-Debuggingzeile    VALUE 'D' 'd'. 
      05  Bereich-A-und-B.
          10  Bereich-A       PIC X(4).
          10  Bereich-B       PIC X(61).
      05  Zeilen-Endekennung  PIC X(8).

Die Definition eines Wertebereiches sieht als Beispiel so aus:

 01 Wertebereich          PIC 99V99 USAGE COMPutational.
    88 Einerwerte         Value 1 thru 9.
    88 Zehnerwerte        Value 10 thru 19.
    88 Zwanzigerwerte     Value 20 thru 29.

Äußere Erscheinung und interne Repräsentation werden im Wesentlichen durch die Klauseln PICTURE und USAGE bestimmt. USAGE COMP, wenn damit binär gerechnet werden soll, DISPLAY zur Anzeige. Der Standard ist hingegen, dezimal zu rechnen. Die Symbole hinter PICTURE legen die Anzahl Stellen oder Zeichen fest, bzw. Editiersymbole wie Dezimal- oder Tausendertrennzeichen, Vorzeichen, Währungssymbole, gedachtes Dezimaltrennzeichen (V) etc., und bestimmen eine elementare Variable damit als entweder alphabetisch, alphanumerisch, numerisch oder numerisch-editiert.

In COBOL wird die Formatierung für sichtbare Ausgabe eben durch die Datendeklaration erledigt, nicht durch prozedurale Anweisungen wie in Sprachen wie Pascal oder C. Den Rest der insgesamt etwa 60 möglichen Klauseln einer Datendeklaration möge man in einem COBOL-Handbuch nachschlagen.

Prozedurale Anweisungen[Bearbeiten]

In der Procedure Division findet sich der ausführbare Programmcode. Die Ausführung beginnt mit der ersten Anweisung hinter der Überschrift Procedure Division bzw. den DECLARATIVES, deren Ausführung nur durch bestimmte Ereignisse ausgelöst wird. Danach werden alle Anweisungen sequentiell ausgeführt, bis ein STOP RUN das Programm beendet, oder ein GO TO zu einer anderen Stelle im Programm verzweigt.

Die Procedure Division besteht aus einer oder mehreren Prozeduren. Eine Prozedur ist entweder

  • eine Section: Ein Name, der in Spalte 8 beginnt gefolgt von dem Schlüsselwort SECTION und einem Punkt.
  • eine Gruppe von Sections
  • ein Paragraph: Ein Name, der in Spalte 8 beginnt und mit Punkt endet.
  • eine Gruppe von Paragraphs

Eine solche Prozedur besteht dann aus einem oder mehreren COBOL-Anweisungen (Statements).

Prozeduren können mit der COBOL-Anweisung Perform ausgeführt werden. Es gibt keine formale Parameterübergabe, alle Prozeduren haben Zugriff auf alle Felder in der Data Division.

Mittels CALL können externe Programme (COBOL oder andere Programmiersprachen) aufgerufen werden. Dabei werden Parameter By Reference oder By Content übergeben, wodurch unterschieden wird, ob das aufgerufene Programm übergebene Variablen im aufrufenden Programm ändern kann.

COBOL unterstützt seit dem Standard 1974 (VS COBOL II) die strukturierte Programmierung; die Verwendung des ebenfalls zulässigen GOTOs ist heute verpönt. In der professionellen Programmierung herrschen hausinterne Programmierstandards, welche in der Mehrzahl festlegen, dass Prozeduren ausschließlich aus einer Section bestehen.

Ziel der COBOL-Syntax soll sein, dass auch ein nicht an formale Programmiersyntax gewohnter Mensch den Sinn eines COBOL-Programm erahnen kann (wenn er oder sie etwas Englisch kann). Alle COBOL-Anweisungen beginnen mit einem Verb, und davon gibt es viele.

Einfache Codeschnipsel[Bearbeiten]

Zur Darstellung der Syntax wird einfache C-Syntax zu Hilfe genommen.

  • Eine Zuweisung a = b; ist in COBOL
    MOVE b TO a
    
    .
  • Arithmetische Ausdrücke und eine Zuweisungen
    • a = b + c;, können in COBOL folgendermaßen geschrieben werden
      ADD b TO c GIVING a
      
      oder alternativ
      COMPUTE a = b + c
      
      .
    • analog b = a - 1; in C entspricht auf COBOL
      SUBTRACT 1 FROM a GIVING b
      
      .
  • Der Inkrementoperator a++; in C entspricht auf COBOL
    ADD 1 TO a
    
    .
  • Der Dekrementoperator a--; in C entspricht auf COBOL
    SUBTRACT 1 FROM a
    
    .

IF/ELSE und EVALUATE[Bearbeiten]

IF und ELSE funktionieren so, wie man es erwartet. Das End-If wurde erst mit dem COBOL85-Standard eingeführt. Im COBOL74-Standard wurde die IF-Anweisung noch durch einen Punkt beendet, was eine leicht zu übersehende Fehlerquelle darstellen konnte.

COBOL85-Syntax:

    If Nenner > 0
         Compute Zahl = Zaehler / Nenner
         End-Compute
    Else
         Display "Ich bin so unglücklich!"
         Move 0 To Zahl
    End-If

COBOL68-Syntax:

    If Nenner > 0
         Compute Zahl = Zaehler / Nenner
    Else
         Display "Ich bin so unglücklich!"
         Move 0 To Zahl.

EVALUATE macht die mehrfache Fallunterscheidung, womit jede Form von CASE oder Switch (wie in C), Folgen von IF/ELSIF/ELSIF/END-IF bis hin zu vollständigen Entscheidungstabellen dargestellt werden kann. Die Anweisung EVALUATE wurde erstmals in COBOL85 integriert, COBOL-Versionen vor der 85-Version kennen kein EVALUATE, so dass dort mehrfache Fallunterscheidungen über – teils schwierig zu lesende – IF-Konstrukte abgebildet werden mussten.

    Evaluate True
        When  Nenner > 0
              Compute Zahl = Zaehler / Nenner
        When  Nenner < 0
              Compute Zahl = Zaehler / Nenner * -1
        When Other
              Display "Ich bin schon wieder unglücklich!"
              Move 0 To Zaehler
    End-Evaluate

Eine COBOL-Spezialität sind die sogenannten Conditional Statements, das sind COBOL-Anweisungen mit einer Bedingungs-Klausel:

COBOL85-Syntax:

    Read Eingabesatz
         At End
             Display "Dateiende erreicht" Eingabe-Zaehler "gelesen!" 
             Set Ende-der-Verarbeitung To True
         Not At End
             Add 1 to Eingabe-Zaehler
    End-read

Schleifen[Bearbeiten]

Eine C-Schleife wie „for (i=0; i<10; i++) {...}“ wird in COBOL mit PERFORM kodiert (COBOL85-Syntax):

    Perform Varying i From 0 By 1
              Until i >= 10
       . . .
    End-Perform

COBOL heute[Bearbeiten]

Das Haupteinsatzgebiet der Programmiersprache COBOL ist die betriebswirtschaftliche Datenverarbeitung. Wenn EDV-Programme in eine Benutzerschnittstelle, einen Verarbeitungsteil und einen Datenhaltungsteil strukturiert werden, liegt der Einsatzschwerpunkt von COBOL-Programmen im Verarbeitungsteil.

Insbesondere auf PCs, aber auch auf anderen Systemen können als Benutzerschnittstelle eine Vielzahl von Möglichkeiten zum Einsatz kommen. Neben den Standard-COBOL-Anweisungen ACCEPT zur Tastatureingabe und DISPLAY zur Bildschirmausgabe kommt aus der X/OPEN-Spezifikation die SCREEN SECTION hinzu, außerdem herstellerspezifische Lösungen.

Sofern die Anwendungsarchitektur in mehrere Schichten getrennt ist, kann die Präsentationsschicht auch auf den Client verlagert werden. Dies erlaubt den Zugriff auf COBOL-Anwendungen über grafische Frontends. Client und Server müssen dazu ein Kommunikationsprotokoll unterstützen. Momentan erlebt die serviceorientierte Architektur (SOA) einen Medienrummel, der unter anderem dieses Problem durch einen Standard zu lösen sucht.

Der Datenhaltungsteil kann mit COBOL-Mitteln oder mit einem Datenbankanschluss realisiert werden. Für den Zugriff auf relationale Datenbanken stellt COBOL embedded SQL (EXEC SQL) zur Verfügung. Auch kann man stored procedures in COBOL programmieren.

COBOL ist in der Wirtschaft und Verwaltung, z. B. bei den Finanzbehörden, weit verbreitet. Aufgrund der historisch gewachsenen Anzahl an COBOL-Programmen ist es für die Unternehmen sehr schwer und sehr teuer, diese zu ersetzen. Mangelnde Dokumentation ist hier jedoch als Hauptgrund zu nennen (Softwarekrise), nicht jedoch die Unersetzlichkeit von COBOL.

Neuerungen in COBOL aus der jüngsten Zeit:

  • Nested Program erlaubt es, innerhalb eines COBOL-Programms Prozeduren mit lokalen Variablen zu schreiben.
  • Intrinsic Functions für mathematische und andere Funktionen.
  • Das COBOL-Verb XML PARSE bietet einen integrierten XML-Parser.
  • OO-Erweiterungen erleichterten die Zusammenarbeit mit objektorientierten Programmiersprachen.
  • Formatfreie Notation erlaubt eine Zeilenlänge von 255 Zeichen und ein Verzicht auf die alten Margins A und B.
  • Bedingte Compilierung und ein preprocessing.

Entwicklung und Standardisierung[Bearbeiten]

Ein Ausschuss des oben erwähnten CODASYL erarbeitete im Jahr 1959 einige Grundsätze, legte den Namen COBOL fest und veröffentlichte im April 1960 seinen Abschlussbericht mit den ersten Spezifikationen der Programmiersprache, die als COBOL-60 in die Geschichte eingingen.

Im Rahmen von CODASYL gab es dann ständig einen Ausschuss, teilweise mit Unterausschüssen, der bzw. die sich mit der Weiterentwicklung von COBOL befassten und im Lauf der Jahrzehnte verschiedene Namen und verschiedene Status innerhalb von CODASYL hatten.

Entwicklung durch CODASYL[Bearbeiten]

COBOL-60 zeigte die Praktikabilität der angestrebten gemeinsamen Programmiersprache.

COBOL-61 war nur teilweise kompatibel mit der Vorgängerversion, wurde aber weitgehend in zahlreichen Compilern implementiert. CODASYL hat sich dann darauf verpflichtet, die Sprache von da aus evolutionär weiterzuentwickeln, statt revolutionäre Änderungen vorzunehmen.

Mit COBOL-61 EXTENDED kamen u. a. die SORT-Möglichkeiten und der REPORT WRITER hinzu.

COBOL, EDITION 1965 fügte u. a. interne Tabellen und Optionen für Dateibearbeitung hinzu.

Weitere Dokumente zur Entwicklung sind die CODASYL COBOL JOURNAL OF DEVELOPMENT der Jahre 1968, 1969, 1970, 1973, 1976, 1978, 1981 und 1984.

Erweiterungen durch X/Open, die Open Group[Bearbeiten]

Im Rahmen der Bemühungen um einen Standard für das Betriebssystem Unix durch die Industrievereinigung X/Open wurden dafür auch Spezifikationen für COBOL vereinbart, deren jüngste von 1991 aus den höchsten Stufen der vorgeschriebenen Module von COBOL-85 besteht, mit der Erweiterung von 1989 durch die „Intrinsic Functions“, aber ohne Report-Writer, Segmentierung und Debugging, dafür aber mit eigenen Erweiterungen für Interaktion mit Bildschirmformularen (SCREEN SECTION und ACCEPT/DISPLAY), gemeinsamen Zugriff auf Dateien mit Sperren auf Dateien und Sätze, sowie Internationalisierung mit z. B. Doppelbyte-Zeichensätzen.

Standardisierung durch ANSI[Bearbeiten]

Im Jahr 1960 wurde, angeregt durch den Industrieverband „Computer and Business Equipment Manufacturers Association“, im Rahmen der US-amerikanischen Standardisierungsorganisation (ASA) ein „Committee on Computers and Information Processing“ mit der Nummer X3, geschaffen, welches dann einen Unterausschuss X3.4 für Programmiersprachen einrichtete, der wiederum einen Unterausschuss X3.4.4 für COBOL einrichtete. Im Dezember 1962 wurden Hersteller und andere Interessierte zur Mitarbeit an der Standardisierung eingeladen, wobei dann festgelegt wurde, dass die Standardisierung auf den Publikationen des CODASYL fußen sollten.

Der erste Standard wurde am 23. August 1968 als USA Standard COBOL 1968 verabschiedet und als Dokument X3.23-1968 veröffentlicht.

Der Ausschuss X3.4.4 wurde dann zum Technischen Komitee X3J4, wie er auch heute noch heißt, und machte sich an die Arbeit, den nächsten Standard zu entwickeln, der dann am 10. Mai 1974 als American National Standard COBOL 1974 verabschiedet und dann im Dokument ANS X3.23-1974 veröffentlicht wurde.

Der nächste Standard wurde im April 1985 von X3J4 verabschiedet und im September vom zuständigen Entscheidungsgremium der inzwischen ANSI heißenden Organisation angenommen und dann als ANS X3.23-1985 veröffentlicht. COBOL-85 führte mit Begrenzern wie END-IF und END-PERFORM erstmals die Möglichkeit ein, in COBOL beliebig geschachtelte Entscheidungs- (IF, EVALUATE) und Wiederholungsanweisungen (PERFORM) zu schreiben und damit die sogenannte strukturierte Programmierung in COBOL zu praktizieren. Zu COBOL-85 wurde später ein Zusatz mit eingebauten (intrinsic) Funktionen und ein weiterer mit Korrekturen zum Standard veröffentlicht.

Der aktuelle Standard wurde 2002 verabschiedet. Wesentliche Änderungen darin sind die Übernahme der Erweiterungen durch X/Open, die explizite Unterstützung von internationalen Zeichensätzen einschließlich Unicode, die objektorientierte Programmierung sowie bedingte Compilierung, neben zahlreichen anderen Erweiterungen und Präzisierungen.

Nach dem Ende von CODASYL hat das Komitee J4 auch die Verantwortung nicht nur für die Standardisierung, sondern auch für die Entwicklung übernommen.

Der nächste Standard wurde für das Jahr 2010 vorbereitet, ist allerdings immer noch in Arbeit.

Internationale Standardisierung bei ISO[Bearbeiten]

Das Komitee X3J4 (früher X3.4.4) hat von Anfang an eng mit verschiedenen internationalen Gremien zusammengearbeitet. Dementsprechend stimmte ANS COBOL X3.23-1968 mit der ISO-Empfehlung für COBOL überein.

In der ISO ist das Technical Committee ISO/TC 97, Computers and Information Processing zuständig, dessen Sekretariat vom ANSI gestellt wird.

ISO hat zu COBOL eine Empfehlung (Recommendation) R-1989:1972 sowie Standards ISO 1989:1978 und ISO 1989:1985 verabschiedet und dabei die Vorgabe des US-Standardisierungsgremiums übernommen.

Der aktuelle Standard 2002 ist umgekehrt zuerst als ISO/IEC 1989:2002 veröffentlicht und dann von den nationalen Standardorganisationen übernommen worden.

Module und standardkonforme Implementierungen[Bearbeiten]

COBOL-68, COBOL-74 und COBOL-85 ordneten die verschiedenen Features der Sprache einem Modul mit jeweils einem bis drei „Levels“ zu, woraus dann minimale und volle Implementierungen des Standards als Kombination von bestimmten Levels der jeweiligen Module definiert wurden. Eine mit COBOL-2002 konforme Implementierung muss den gesamten Sprachumfang implementieren.

COBOL-Compiler[Bearbeiten]

Für Computer der Klassen „Großrechner“ und „Mittlere Datentechnik“ boten und bieten deren jeweilige Hersteller – IBM, Unisys, Siemens, Fujitsu-Siemens, HP, Bull u. a. – auf ihre proprietären Betriebssysteme zugeschnittene COBOL-Compiler an, z. T. verschiedene Compiler, die beispielsweise verschiedenen Standards entsprechen.

Für Betriebssysteme, die aus der UNIX- bzw. MS-DOS-Tradition entstanden sind, gibt es COBOL-Compiler von verschiedenen Software-Herstellern. Näheres siehe in der unten verlinkten COBOL-FAQ von William M. Klein.

COBOL-Generatoren[Bearbeiten]

Es gibt Codegeneratoren, die COBOL-Programme bzw. Teile davon generieren und so die Entwicklungsarbeit erleichtern. Dazu gehören zum Beispiel SWT01 und SWT/VDA von dem Hersteller FSP, CA Gen (ehemals Cool:Gen) von CA Technologies, sowie die Generatorsysteme ADSplus und SCORE von Delta Software Technology.

Siehe auch[Bearbeiten]

Weblinks[Bearbeiten]

 Wiktionary: COBOL – Bedeutungserklärungen, Wortherkunft, Synonyme, Übersetzungen
 Commons: COBOL – Sammlung von Bildern, Videos und Audiodateien