Philosophie und Politik

Hochschulen im Wettbewerb
Bildung für nachhaltige Entwicklung
Programmiersprache als ideale Sprache
Kapitalismus - ein Gedankenexperiment
Geld - ein Naturphänomen
Das Pendel des Geistes
Paternalismus: Die unsichtbare Macht
Kapitalismus an sich
Die neuen Glasperlen

zurück

Programmiersprache als ideale Sprache


Uni Wien

Bernd Ulmann und Patrick Hedfeld. Abstract zur Konferenz "Orte des Denkens" an der Universität Wien 2013

Reflektiert man über Sprache und Philosophie, so führt kein Weg an Wittgenstein, Chomsky oder Piaget und anderen vorbei. Bereits Hegel erarbeitet in seiner „Psychologie der Intelligenz“ die Begriffe Symbol, Zeichen und Sprachzeichen und zeigt hierbei den Grad der Freiheit, der Abstraktion sowie der mannigfaltigen Momente auf.
Durch die Entwicklung sogenannter formaler Sprachen in Form von Programmiersprachen, entstand eine neue Qualität von Sprachen, die in vielerlei Hinsicht als ideale Sprachen im Sinne der analytischen Philosophie angesehen werden können. Eine der aussergewöhnlichsten und zugleich leistungsfähigsten Sprachen ist die Sprache APL, die in den 1960er Jahren von Ken Iverson entwickelt wurde. Der Einfluss von Sprache auf das Denken und Problembeschreiben und damit auch das Problemlösen wurde vielleicht nie eindrucksvoller herausgearbeitet als in Ken Iversons Paper „Notation as a Tool of Thought“. In dieser Arbeit fordert Iverson darüber hinaus Einfachheit und Strukturierbarkeit von Sprachen. Eine Frage, die sich in diesem Zusammenhang stellt, ist, ob sich ideale Sprachen im Sinne von Programmiersprachen hinsichtlich des Grades ihres jeweiligen Abstraktionsgrades beziehungsweise ihrer Statementkomplexität anordnen lassen oder ob diese beiden Maße sogar miteinander korrelieren. Erste Gedanken hierzu finden sich in (Ousterhout,1988). Lässt sich aus solchen Betrachtungen ein Maß für die Nähe oder Verwandtschaft zwischen idealen (formalen) Sprachen und ihren natürlichen Gegenstücken ableiten?
Beispielsweise besitzt die Programmiersprache COBOL oberflächlich betrachtet eine große Nähe zum Englischen. Ein Statement der Form ADD A TO B GIVING C. ist eine valide Anweisung in COBOL. Ein weiteres Beispiel für eine solche Nähe zu natürlichen Sprachen findet sich in Form sogenannter Statementmodifier, wie sie in Perl, Ruby und anderen dynamischen Sprachen zu finden ist. Ein Beispiel hierfür ist das Perl-Statement die ERROR! if $error_occured;, in dem die steuernde Bedingung nach der eigentlichen Aktion, dem Abbruchkommando die, notiert wird. Damit erschöpfen sich jedoch bei vielen Programmiersprachen die Ähnlichkeiten mit natürlichen Sprachen – gibt es darüberhinaus abstraktere Verbindungen? Die Programmiersprache J verwendet beispielsweise Adverbien, mit denen das Verhalten von Verben, die am ehesten mathematischen Funktionen entsprechen, modifiziert werden können – ein Vorgang, der in natürlichen Sprachen weit verbreitet ist.
Viel Medienecho rief kürzlich die Entwicklung einer arabischen Programmiersprache hervor, die aus dem Vorwurf eines englischsprachigen Kulturimperialismus hervorging und der scheinbar Allgegenwärtigkeit von Programmiersprachen, die zumindest englische Schlüssenwörter verwenden, etwas anderes entgegensetzen möchte. Diese Entwicklung wird von den Autoren als oberflächlich betrachtet, da letztlich „nur“ eine arabische Version der Programmiersprache Scheme umgesetzt wurde, so dass lediglich eine Notationstransformation stattfand, nicht jedoch eine Programmiersprache geschaffen wurde, die im Sinne und Kulturverständnis des arabischen zu verorten ist. Kann eine arabische Version einer bekannten Programmiersprache neue Ideen, neue Problemlösevarianten transportieren oder muss sie vielmehr in ihrer Herkunft verhaftet bleiben? Wie ist das Einflussverhältnis von Notation, d.h. Semiotik auf der einen und Semantik auf der anderen Seite zueinander? Offenbar sind Programmiersprachen ausgeprägte „Orte des Denkens“, wobei der Bogen von dem Einfluss, über eine wechselseitige Inspiration, bis hin zu natürlichen Verflechtungen gespannt wird. Gerade die vielfältigen Berührungspunkte, an denen Verflechtungen mit natürlichen Sprachen und quasi natürlichen Denkstrukturen stattfinden gestalten Fragestellungen in diesem Bereich in einem Maße vielschichtig, das eine tiefergehende Betrachtung erforderlich macht.