Freischaffender Erfinder Thomas Wolf Ein ziemlich freier Mensch
Universelle
Internet
Maschine
Arbeitsplatz
Europa
Omm
Lebenslauf
Grundgesetz
Menschen-
rechte
Aufklärung ist nötiger denn je
Speisewagen
Impressum
Beiträge
UIM Universelle Internet Maschine  
17.07.2005
Richtiges Richtfest

So, jetzt aber wirklich: heute ist Richtfest, und zwar ein richtiges. Während der letzten drei Wochen seit dem letzten, einfachen Richtfest habe ich natürlich doch noch dies und jenes an meiner Sprache gerade ziehen müssen. "Fehler beseitigen" kann man das ja nicht nennen, wenn man sich von der Aufgabenstellung bis zur konkreten Lösung alles selber ausdenkt. Bei jedem Lösungsversuch denke ich zunächst einmal "das wird wohl die Lösung sein", aber meistens stellt es sich eben doch erstmal als ein mißlungener Versuch heraus. Das war dann aber eigentlich kein "Fehler" sondern ein notwendiger Versuch, um das Richtige herauszufinden.

Das beglückende daran ist, daß ich früher oder später immer das Richtige herausfinde. Ich kann es nicht erzwingen. Ich kann mich darauf verlassen, und das ist eine so schöne Gewißheit. Die Ideen kommen immer zur richtigen Zeit, wenn die Zeit dafür reif ist. Wie würden wir das einem Chef erklären? Hähä. Wie sieht Ihr Terminplan aus, Herr Wolf? Naja, so Chef, wie die Zeit eben reif ist, genau so! Sie sind gefeuert, Herr Wolf. Danke, gleichfalls, Chef.

Im März dachte ich schon, die Parameterübergabe würde im großen und ganzen so stimmen, aber Pustekuchen. Bis jetzt brauchte ich noch einmal mehr als drei Monate, bis alles in sich stimmig war. Aber jetzt glaube ich wirklich, daß das Grundgerüst steht. Seit drei Wochen scheint es stabil. Natürlich ist noch jede Menge daran zu tun. Bis jetzt kann man mit meiner Sprache TDL eben gerade mal die einfachste aller CGI-Schnittstellen beschreiben, aber die dahinter stehenden Konzepte sind (hoffentlich) z.B. auch auf andere input-Elemente als nur einfache Textfelder übertragbar. Da bin ich ganz zuversichtlich. Obwohl jetzt, wo ich das so hinschreibe, weiß ich eigentlich schon ganz genau, daß ich mindestens dreimal so lange dafür brauchen werde, als ich es mir jetzt vorstelle (sagen wir mal drei Tage).

Und dann kommt noch dieses Aha-Phänomen hinzu, wo man während der Realisierung ein dahinter stehendes, allgemeines Konzept entdeckt. Von diesem Moment an, gibt es keinen Terminplan mehr, weil man sich auf Neuland begibt. Das ist mir während des letzten dreiviertel Jahres ein paar Mal so gegangen.

Das erste Mal war es, als ich die elementaren Konzepte von XML und XSLT implementiert hatte und anfing, sie für meine Bedürfnisse zu erweitern, insbesondere durch eine eigenwillige Parameterübergabe. Auf einmal hatte sich doch ganz unbeabsichtigt eine Isomorphie zum Lambda-Kalkül in meine Sprache eingeschlichen. Und als mir das auffiel habe ich natürlich alles daran gesetzt diese Eigenschaft mit den XML-entlehnten Eigenschaften meiner Sprache zu verbinden, möglichst ohne dafür die Syntax der Sprache zu verändern. Immer, wenn ich so etwas anfange, habe ich fast keine Vorstellung davon, wie das gehen sollte und "es fällt mir dann ein", so peu à peu. Und das hat dann eben mal gut drei Monate gedauert, von den paar Nebenideen, die ich dabei auch noch implementiert habe, mal ganz abgesehen.

Ein anderes Mal fiel mir plötzlich die Dualität von zweien der drei Sprachkonstrukte in meiner TDL-Sprache auf, was mich hoch erfreute. Ein selbst gesteckter Anspruch an meine Sprache war die möglichst "freie und beliebige" Kombinierbarkeit (in Algol 68 sprach man hier von "Orthogonalität") der drei Sprachkonstrukte, und hier haperte es noch. Das eine konnte man im anderen verwenden, aber nicht umgekehrt. Solange ich keine Anwendung für diese Möglichkeit sah, habe ich sie auch nicht weiter verfolgt, sie aber auch nicht aus den Augen verloren. Auf einmal stieß ich auf einen Anwendungsfall, und die Lösung war mit ca. 10 neuen Programmzeilen in 30 Minuten fertig und läuft seitdem wie erwartet, sozusagen "fehlerfrei", ohne Nachbesserungsbedarf. Diese kleine Änderung hat die Ausdrucksfähigkeit meiner Sprache spontan um ca. 30% erhöht.

Ehe ich diese Änderung in mein Programm eingebaut habe, habe ich allerdings scheinbar nichtstuend länger als drei Tage über die Konsequenzen nachgedacht, in Restaurants beim Wein, im Tiergarten bei der Lindenblüte oder im Freibad Wilmersdorf beim Schwimmen. Ehe ich etwas so grundlegendes ändere, komme ich erstmal eine Zeit lang scheinbar nicht voran. Ich denke dann, ich trete auf der Stelle oder bin vielleicht einfach nur faul. Aber nein, es reift in der Birne, und dann nach ein paar Tagen ist es wie ein Rappel. Na gut, aufraffen muß ich mich natürlich auch immer mal wieder, wenn doch mal der Schlendrian einreißt.

Aber heute ist erstmal ein erstes, großes Zwischenziel erreicht: TDL (Trivial Documentation Language) steht.

 
09.07.2021