Textantrieb

Die Textengine

Die Textengine ist ein in Entwicklung befindliches, experimentelles Softwaresystem im Rahmen meiner unabhängigen Forschung über den Text. Experimentiert wird hier mit dem Einsatz einer Text-Schicht als Basis für den Aufbau, das Zusammenspiel und die Integration von verschiedenen Softwarekomponenten.

Man könnte die Textengine als ein Programmiersystem auffassen. Nur geht es hier nicht darum, eine bestimmte Sprache zu entwickeln, sondern darum, Ausdrücke in verschiedenen Sprachen und Notationen auf ein und dieselbe Datenstruktur, nämlich auf „Text” zurückzuführen. Man könnte die Textengine auch als ein Datenbanksystem auffassen. Hier geht es um eine strukturierte Ablage von „Text”, die sowohl Daten als auch ausführbaren Code enthält, und abgefragt werden kann. Generell geht es in der Textengine darum, den Text — nicht den String, sondern das Symbolgebilde — als Grundbaustein von Anwendungen und Daten und als universelle Schnittstelle zwischen Softwarekomponenten einzusetzen.

Einige Vorreiter haben bereits Schritte in diese Richtung getan, vor allem:

Diese haben etwas richtiges und wichtiges gesehen und verfolgt, nur sind diese Ansätze jeweils zu eng gefasst und insgesamt miteinander inkompatibel. Mit dem schlichten Begriff des Textes als einer artikulierten symbolischen Figur — so meine These — ergeben sich automatisch all diese Möglichkeiten und viele mehr, und zwar in einem integrierten System. Mir schwebt nicht so sehr die Erfindung einer weiteren Programmiersprache oder Datenbanksystem vor, sondern vielmehr die Überholung gängiger Begriffe wie Programmiersprache, Quellcode, Datei, Dateiverzeichnis, Compiler, Anwendung, Datenbank, Laufzeitumgebung, Betriebssystem, und die Einführung eines neuen Begriffs: Textengine.

Die hier entwickelte Textengine ist also als Produkt kein Endzweck, sondern nur ein Schritt in die Richtung, die neuen Grundbegriffe zu formulieren und auszuprobieren und so zur Textforschung beizutragen.

Entwicklungsstatus

Die Software implementiert in C eine Bibliothek und eine Shell für unixbasierten Systemen. Die Bibliothek gibt programmatischen, die Shell interaktiven Zugang zur Textengine. Es ist vorgesehen, die Software unter einer Open-Source-Lizenz zu veröffentlichen.

Die in Arbeit befindliche erste Version der Textengine (Version 0.3) implementiert den Text als Datenstruktur und die Symbolsprache als Notation. Sie ist in der Lage, Ausdrücke in der Symbolsprache als Text zu erfassen, den Text zu durchlaufen, und Texteinheiten in Symbolsprache auszudrücken. Aktuell befindet man sich in einer lange währenden Betaphase. Ausgehend vom realen Einsatz — zum einen im Webserver, der die hiesige Webseite bereitstellt, zum anderen in der Textforschung, siehe die Beispiele in Symbolsprache im Manuskript, so unter Text in: Sprache — wird die erste Implementierung überarbeitet und ausgereift.

Vorhaben

Die geplante darauffolgende Version (0.6) soll Texttransformationen unterstützen, d.h. ausführbaren Code in der Form von Texteinheiten, die im Textkorpus erfasst werden und die Textengine steuern können.

Das ganze Entwicklungsvorhaben beschreibe ich in diesem Papier:

The Text Engine (txt pdf): This paper describes my software development project: the Text Engine. A programmable system built upon parsed text as universal interface (~45-60 min read).

Siehe auch meinen Artikel:

More Unixy Than Unix. A Text-Oriented Programmable Environment (txt pdf): This article reviews the design principle behind Unix and proposes a text-oriented software approach that further develops it and overcomes its limitations (~20-30 min read).