Codierung in natürlicher Sprache:

Sind Programmiersprachen überflüssig?

17.06.1977

MÜNCHEN (uk) - Gibt es eine "Programmierung in natürlicher Sprache"? Dr. Thies Wittig vom Sprachlernzentrum bestreitet diese pauschale Behauptung eines Systemhauses und bezeichnet dessen "PINS"-System als "schlagwortorientiertes Überführungssystem, das die Wörter einer natürlichen Sprache mit Hilfe von Tabellen in Befehle einer formalen Sprache überführt und damit den Namen Übersetzer im Kontext der natürlichen Sprache nicht verdienen würde" (CW Nr. 22 vom 27. Mai 1977 "Mensch - Maschine - Dialog mit Hindernissen").

Die Antwort ließ nicht lange auf sich warten: "PINS"-Mitautor Dr. Klaus Börning verteidigt in dem folgenden Beitrag sein Konzept der "Problemlösungs-Formulierung in natürlicher Sprache" und versucht, die Problematik der Erstellung kommerzieller Software von den Problemen linguistischer Sprachkonvertierung, wie sie beispielsweise beim Compilerbau auftreten, abzugrenzen.

An den Anfang stellen wir eine eindeutige Behauptung: Durch eine ebenso geschickte wie zutreffende Namensgabe ("Programmierung in natürlicher Sprache") wird - bei übrigens nur wenigen - die Annahme provoziert, daß der gesamte Sprachvorrat einer beliebigen Muttersprache zur Formulierung von Problemlösungen mittels EDV benutzt werden kann. Eine solche weite Auslegung ist jedoch dann eine stets subjektive und auch nicht verhinderbar.

Dolmetschende Programmierer unerwünscht

Die praktischen jahrelangen Erfahrungen in der Lösung kommerzieller Probleme sowie die Kenntnis um Strukturen und Logistik kaufmännischer Aufgabenstellungen lassen überdeutlich werden, daß mit üblichen linguistischen Mitteln der Sprachkonvertierung (wie sie im Compilerbau Verwendung finden), diese spezielle und so weit verbreitete Art von (kommerziellen) Problemstellungen nicht gelöst werden kann ohne Einsatz eines "Dolmetschers" (Programmierers). Und genau hier liegt des Pudels Kern. Die letztanwendende Fachabteilung kann und will keine synthetische Programmiersprache erlernen. Die Einschaltung eines jeden dolmetschenden Programmierers schafft stets zwei zusätzliche Schnittstellen, in welchen unverhinderbar Information hängenbleibt. Andererseits muß aber unabdingbar ein Programm erzeugt werden, und zwar im Maschinen-Code.

Programmiersprachen sind überflüssig

Für die Lösung kommerzieller Anwendungsprobleme zumindestens. Unter einer Voraussetzung: Es muß ein substitutives Werkzeug existieren - ein Sprachübersetzer (Generator, Compiler) oder - eine "Programmier-Maschine", welches die laienverständliche Sprache, das heißt eine Untermenge der natürlichen Sprache, in den Maschinen-Code des jeweiligen Computers übersetzt. Wenn ein zuverlässiges und voll funktionsfähiges Organisations-Modell vorhanden ist, werden mit seiner Hilfe alle Strukturen des EDV-Gesamtsystems sowie seine komplette redundanz-optimale Logistik aufgebaut, wobei der EDV-unkundige Sachbearbeiter nur in seinen Kategorien zu denken und nur seinen Sprachgebrauch zu benutzen braucht. Ein - fernwirkend tätiger - "Strukturator" (erfahrener Organisator) sollte projektbegleitend kontrollieren.

"Programmierung in natürlicher Sprache"

Viel wichtiger als die Bestimmung der - für alle Sachverhaltsformulierungen relevanten - Untermenge aus der gesamten Syntax der jeweiligen Muttersprache ist die Erforschung der strukturellen Gesetzmäßigkeit, die für jedes kommerzielle Programm Gültigkeit hat. Diese gesetzmäßige Struktur bestimmt dann die Architektur des "Sprachübersetzers" (Generators). Hier, und nur hier, liegen die Schwierigkeiten eines Sprachübersetzers "natürliche Sprachen in formale Sprache". Die richtige Generator-Architektur vorausgesetzt, existieren diese 3 Komponenten der "natursprachlichen Programmierung" (die keine Programmierung mehr ist):

- Der Anwender vereinbart "mit sich" völlig frei aus dem uneingeschränkten Sprachraum gewählte Namen für alle benötigten Datenarten seines Unternehmensbereiches.

- Die Formulierung des individuellen visuellen OUTPUTs (Druck und/oder Bildschirm) erfolgt per Platzhalter, dargestellt als Kreuzchen auf Karopapier.

- Nicht alle Datenarten werden in Dateien gehortet, sind also originär. Derivative Datenarten sind dann Sachverhalte, welche bedingte oder nicht bedingte arithmetische Verknüpfungen von Datenarten darstellen. Die notwendigen Kommandos hierfür sind voll umfanglich und inhaltlich dem Sprachraum der natürlichen Sprache entnommen, sind also eine Untermenge derselben. Bis auf eingeschränkte Synonyma im Bereich der Kommando-Syntax (weit unter 100 Begriffe) sind - aus guten Gründen -Restriktionen hinsichtlich der Einschränkung des Sprachumfangs der natürlichen Sprache nicht gegeben, auch nicht in der Namensvergabe für Datenarten. Selbstverständlich sollte das Zusammenbauen von Programmen aus vorfabrizierten Modulen (genannt Modulartechnik) nicht als "Programmierung" bezeichnet werden. Nur die Programmierung per Hand oder in natürlicher Sprache kann individuelle Problemlösungen schaffen. Es wird leicht übersehen, daß die Formulierung kommerzieller Problemlösungen nur eine relativ kleine Untermenge aus dem gesamten Sprachraum der natürlichen Sprache benötigt.

Problemlösungs-Formulierung in natürlicher Sprache

Die Problematik der Produktion kommerzieller Software ist recht weit von der linguistischen Problematik wie beispielsweise der Simultanübersetzung (Muttersprache A nach Muttersprache B) entfernt. Und die Problematik der Erstellung eines Individualprogramms mittels eines Werkzeuges (Übersetzer, Generator) liegt überwiegend im Bereich von Strukturen und Logistik. Theoretisch ist unzweifelhaft richtig, daß Formulierungen in natürlicher Sprache unscharf sein werden beziehungsweise bei exakter Formulierung wegen Mehrdeutigkeiten mehr Schreibaufwand benötigen.

Entscheidend ist, daß eine aktive Mitarbeit jeder Fachabteilung bei allen EDV-Problemlösungen erst dann möglich ist, wenn der EDV-Laie mit seinen sprachlichen Mitteln (also nur mit der Umgangssprache) seine Wünsche als direkten Input für einen Generator formulieren kann. Damit ist der riesige Markt der mittelständischen Unternehmen funktional und kostenmäßig in die Lage versetzt, EDV sinnvoll zu nutzen. Und erst dann wird sich das Großunternehmen entschließen, die längst überfällige Reorganisation seiner EDV in Angriff zu nehmen. Durch Aktivierung seiner Kerntruppe, der Sachbearbeiter, die künftigen EDV-Amateure.

* Dr. Klaus Börning ist Geschäftsführer der I/O-Software-Service-GmbH.