Översikt

COBOL (COmmon Business-Oriented Language) är ett högnivåprogrammeringsspråk framtaget för affärs- och administrationssystem. Språket utvecklades i slutet av 1950‑talet för att göra programmering mer läsbar och mindre beroende av specifik maskinvara. Ursprungliga mål var att beskriva affärslogik i en form som liknar naturligt språk, vilket underlättade för både programmerare och domänexperter att förstå koden. De första specifikationerna publicerades 1959 och ledde till tidiga implementeringar och standardiseringsarbete (mer om ursprunget).

Egenskaper och struktur

COBOL är särskilt anpassat för bearbetning av stora mängder transaktionsdata och för rapportgenerering. Språkets huvudegenskaper inkluderar en stark betoning på läsbarhet, deklarativa dataavsnitt och ett blockorienterat programflöde. Syntaxen innehåller ofta frasliknande satser som gör att uttryck kan se ut som nahezu engelska på kommandonivå, till exempel ADD och MOVE, vilket jämförs med andra begripliga språkkoncept (syntaxens natur och jämförelser med SQL).

  • Programstruktur: divisions och sections (IDENTIFICATION, DATA, PROCEDURE).
  • Datahantering: fasta register, filorienterad I/O och avancerade picture‑format för numeriska och alfanumeriska fält.
  • Felkänslighet: traditionellt strikt typ- och strukturkontroll, senare standarder har tillfört mer flexibilitet.

Historia och standarder

Efter den första specificeringen följde flera revisioner och standarder för att bevara kompatibilitet mellan olika kompilatorer. Versioner från före mitten av 1980‑talet skiljer sig ofta från senare standarder; en viktig moderniseringsrunda skedde med standarden 1985 och därefter 2002, som introducerade nya möjligheter för modulär och strukturerad programmering samt senare tillägg för objektorienterade konstruktioner. Standardutvecklingen har varit ett sätt att möta förändrade krav i affärsvärlden samtidigt som befintliga system hållits i drift.

Kritik och debatt

COBOL har både försvarare och kritiker. En välkänd kritiker, Edsger Dijkstra, uttryckte stark motvilja mot språket och menade att dess användning kunde försvåra klar och strukturerad programmering (kritik av Dijkstra). Andra har försvarat COBOL och pekat på att problem ofta kommer från dåliga programmeringsvanor eller brist på utbildning i strukturerade metoder — en ståndpunkt representerad av bland andra Howard E. Tompkins (motargument).

Nutida användning och utveckling

Trots ålder används COBOL fortfarande i stor utsträckning inom banker, försäkringsbolag och myndigheter på grund av dess stabilitet och omfattande befintliga kodbaser. Modern COBOL har utökats för att stödja nyare paradigmer: objektorientering, användardefinierade funktioner och datatyper, samt integration med moderna miljöer och databaser (nyare språkförlängningar). Det innebär att äldre system ofta underhålls och vidareutvecklas i stället för att helt bytas ut.

Betydelse och särskilda kännetecken

COBOLs viktigaste arv är dess fokus på läsbarhet och affärsorienterade konstruktioner, vilket gjort det till ett robust val för storskaliga transaktionssystem. För dem som arbetar med långlivade informationssystem är kunskap i COBOL fortfarande relevant. Samtidigt ställer de stora mängder äldre kod krav på analys, testning och dokumentation när systemen ska moderniseras eller migreras.