VATICAL®
Die Apokalypse der Programmiersprachen
Version 2.2
VATICAL® erschien im Jahre des Herrn 1983 als Kreation der legendären Softwarehäuser CUSHYWARE & GRADDLERSOFT. Trotz Bedenken ansonst gut informierter Kreise konnte ihr bereits 1984 die Serienreife erteilt werden. VATICAL® ist in der nunmehr vorliegenden vorläufig endgültigen Version 2.2 absolut und vorsätzlich inkompatibel zu allen anderen existierenden Betriebssystemen, Prozessoren und Expertenmeinungen und hat nicht zuletzt deshalb die allerbesten Marktchancen.
Ursprünglich war VATICAL® sehr nahe an Pascal orientiert. In der ersten Entwicklungsphase konnte jedoch erfreulicherweise eine Annäherung an Basic und Fortran erreicht werden, ohne daß auf die Unzulänglichkeiten von Pascal verzichtet werden mußte. Selbst die sattsam bekannten Mängel von Basic und Fortran konnten erfolgreich implementiert werden.
VATICAL® ist weder über Compiler noch Interpreter lauffähig, sondern arbeitet über einen Absoluter, der im Gegensatz zu den schäbigen Forth-Versionen keinen Stapelspeicher mehr benötigt, sondern eine 'EWIGE LISTE'.
Diese 'EWIGE LISTE' kann weder überschrieben noch gelöscht werden. Allenfalls der Befehl 'DOOMSDAY' erstellt eine Liste der erfolgten Eingaben und läßt VATICAL® entsprechende Entscheidungen treffen. Diese decken sich nicht unbedingt mit Absicht und Willen des Benutzers.
VATICAL® besitzt verschiedene Schnittstellen. So wird das Drucker-Interface über 'PRAY' angesprochen. VATICAL® überprüft alle Ausgaben an den Drucker und behält sich leichte Korrekturen und Kommentare vor. Zur nicht gelinden Überraschung der Erfinder verfügt es auch über ein Disk-Interface und betreibt es über die Befehle 'MISSION' und 'MERCY'. Allerdings können ausschließlich indexgeprüfte Holy-Access-Dateien bearbeitet werden. Der Default-Index von VATICAL® vermerkt Änderungen an ihm in der 'EWIGEN LISTE'. VATICAL® unterstützt den Betrieb von max.drei Laufwerken, die bindend die Bezeichnung 'FATHER', 'SON' und 'SAINT' haben. Daten und andere Files werden grundsätzlich über das Laufwerk 'SAINT' bearbeitet. Das Laufwerk 'SON' bietet Hilfs- und Utilityfunktionen, während das Laufwerk 'FATHER' ausschließlich das Betriebssystem verwaltet.
Im Gegensatz zu den herkömmlichen und zumeist veralteten Disk-Betriebssystemen benötigt VATICAL® weder ein Inhaltsverzeichnis noch Sektoren oder gar Spuren. Der Plattenplatz wird in sieben Bücher aufgeteilt und jedes Buch wiederum in Kapitel. Die jeweiligen Kapitelinhalte verwaltet das Laufwerk 'FATHER' in der Datei 'APOCALYPSE'. Diese Datei gehört zum Lieferumfang und erlaubt dem Besitzer keinerlei Änderungen. Zu dieser Datei nichtkonforme Aufzeichnungen werden grundsätzlich nicht am Bestimmungsort abgelegt, sondern landen ebenfalls in der 'EWIGEN LISTE'.
VATICAL® erlaubt die Befehlseingabe sowohl in lateinischer als auch englischer Sprache. Im Manual wird jeweils der bekanntere Begriff benutzt. Für eventuell notwendige Übersetzungshilfen kann jedes Lexikon herangezogen werden.
Nach dem Einschalten des Rechners meldet sich VATICAL® mit dem systemtypischen Cursor + und erwartet den Aufruf oder die Eingabe eines Programms. Programme müssen grundsätzlich mit 'LITURGY:' beginnen und mit 'AMEN' enden. Im Programm selbst darf nach Herzenslust umhergesprungen werden. Es darf auch aus dem Programm herausgesprungen werden, was auch immer dies bedeuten oder bewirken mag.
So kennt VATICAL® die ungewöhnlichen Befehle wie:
GOLEFT, GORIGHT, GOSUB, GOUP, GODOWN, GOAWAY, GOHOME, GOASCENSION, GOHELL, GOGO, GOWEST, GOELSE, GOANYWAY, GONOT und GOTOGODOT.
Ähnlich wie bei den freiprogrammierbaren Sprunganweisungen kann ein beliebiger Teil des Programmes als Unterprogramm deklariert werden: z.B. alles, was mehr als 20 Zeichen weit rechts in einer Zeile steht. Grundsätzlich kann jeder Teil eines Programms einen beliebigen anderen Teil zum Unterprogramm erklären. Der Programmteil, der die meisten Unterprogramme findet, ist dann das Hauptprogramm. Demgemäß existiert in VATICAL® kein Befehl 'RETURN', sondern die Rücksprunganweisungen 'SEARCHME', 'WAY NEXT', 'RESTART', 'DOBEST' oder 'TRY AGAIN'.
VATICAL® bietet dem Benutzer zahlreiche Möglichkeiten zur Schleifenbildung innerhalb der Programme:
FOR-NEXT-DO, FOR-NEXT-DO-NOT, FOR-NEARER-DO, FOR-WHAT-REASON,UNTIL-BETTER-USE-DO, UNTIL-NO-ERROR-PERFORM, WHY-FOR, WHAT-ELSE, WHY-NOT-PLEASE, WHY-DONT-WE-DO-IT, WHAT-SHALLS, TRY-UNTIL, HOPE-LESS, UNTIL-NO-FUTURE-DO, JUMP-ANYWHERE-UNTIL, WAIT-UNTIL-DOOMSDAY, IF-NO-TEXT-THEN-TEXT, sowie WAIT-FOR-GODOT
Glücklicherweise besitzt VATICAL® zahl- und folgenreiche Meldungen von Syntaxfehlern des Programms, gelegentlichen Systemabstürzen, Dateiüberschreibungen und mitgelieferten Fehlern des Betriebssystems.
Grundsätzlich meldet VATICAL® einen auftretenden Fehler wie folgt:
MY SCORE - YOUR SCORE - CHAMPION'S SCORE
* * * ALL THE BEST * * *
Unnötig zu bemerken, dass jeder Fehler unnachsichtig in der 'EWIGEN LISTE' eingetragen wird. Mit einer Ausnahme: findet VATICAL® besonders elegante und funktionstüchtige Programme (Maximalwert=3 Fehler pro Zeile), kann der Benutzer mit dem Befehl 'INDULGENCE' Einträge in der 'EWIGEN LISTE' stornieren.
Bei Überlauf des Variablenspeichers betreibt VATICAL® im Gegensatz zu Schundsprachen wie BASIC keine Garbage Collection, sondern wandelt diese Funktion in eine 'VALUE COLLECTION' um. Alle Variableninhalte, die VATICAL® als brauchbar ansieht (z.B. reale, positive Zahlen oder Zeichenketten mit orginellem Inhalt und kulturellem Niveau) verlegt das Betriebssystem in die Datei 'RECORDS' auf der 'FATHER'-Disk. Die restlichen Einträge werden in der 'EWIGEN LISTE' abgelegt und der Speicher wird gelöscht. Einträge, die der Benutzer weiterverarbeiten will, müssen vorher in der Datei 'ESTATE' abgelegt werden.
Variablen werden mit dem Betriebssystem vereinbart und an geeigneter Stelle getauft. Erst die namentliche Taufe einer Variablen, z.B. in der Form 'ST.KEVIN CHRISTIANED AS INTEGER', läßt das Betriebsystem die Variable erkennen.
Alle Namen von Variablen müssen im Programmkopf vereinbart werden. VATICAL® überprüft Art, Sinn und Zweck dieser Vereinbarungen und behält sich leichte Korrekturen vor. Die Namen der Variablen müssen Zwingend mit 'ST.' beginnen. Daran angehängt wird der eigentliche Variablenname und zwar:
Besonderes Augenmerk gilt hier den Charakterzeichen. Sollte eine Variable mit ST.LUTHER oder aber noch schlimmer bezeichnet werden, hat dies katastrophale Folgen für den Benutzer. Alle Variablennamen sind auf- und abwärts kompatibel, allerdings vermerkt VATICAL® hierbei Verwechslungen mit 'NOT YET' oder 'FLATTERY'.
Die Darstellung von Zahlen im negativen Bereich erfolgt durch den Zusatz 'TEMPTATION'. Die Schreibweise von 'TEMPTATION OF ST.KEVIN = 10.000' ergibt für die Integervariable ST.KEVIN den Wert -10.000. Variablenwerte können in VATICAL® grundsätzlich nur addiert werden und zwar in der Form:
'ST.KEVIN AND ST.MARTIN PRAISE FOR ST.RESULT'
Das Ergebnis der Addition steht dann logischerweise in 'ST.RESULT'. Die Zuweisung des Wertes 'NULL' zu einer Variablen bedarf der Form: 'ST.KEVIN IN POVERTY'. Die Darstellung negativer Realwerte erlaubt VATICAL® ausschließlich über die Bezeichner 'JUDAS', 'KAIN' und 'ROCKNROLL'. Alle Variablenbezeichner gelten nicht nur global im Programmbereich, sondern auch noch nach dem Ausschalten des Rechners.
VATICAL® beinhaltet auch einen leistungsfähigen Programmeditor, der über den Befehl 'MEA CULPA' aufgerufen wird. Der Editor unterscheidet zwischen: OE = einfachen Sünden, $ = Erbsünden und $$ = Todsünden.
Sollten im Programm Todsünden auftreten, so muß der Benutzer von VATICAL® den Editor mit 'MEA MAXIMA CULPA' und anschließend je nach Zahl der Fehler X mal 'ROSARY' eingeben. In allen Fällen verlangt der Programmeditor die Eingabe des Benutzernamens. Dieser wird dann in der 'EWIGEN LISTE' abgelegt. Der Editor vergleicht Sinn, Art, Zweck, Ausführung und Effizienz des Programms und unterstützt demgemäß den Benutzer. Dazu listet er zuerst die fehlerhafte Zeile auf. Der Befehl 'MISSION' liefert eine Korrektur, wie sie VATICAL® für ratsam hält. Der Befehl 'DEMISSION' erlaubt eine benutzerspezifische Eingabe. Das Ende des Programmeditors wird durch die Eingabe 'SAKE' abgeschlossen.
Zur Online-Fehlersuche trägt VATICAL® durch verschiedene Befehle bei: Die Eingabe 'DEVILINSIDE' löscht das Programm selbst und auch alle ähnlich lautenden Programme.
Der Befehl 'INQUISITION' suspendiert das laufende Programm, setzt selbständig Fehler ein und startet es neu. Der Ablauf wird dann protokolliert und mit dem ursprünglichen Zustand verglichen. Auftretende Fehler werden mit den Einträgen der 'EWIGEN LISTE' verglichen und entsprechend dokumentiert. Der Befehl 'CONFESS' schließlich listet alle augenscheinlichen und wahrscheinlichen Fehler auf und erlaubt über die Eingabe 'AVE MARIA' eine sofortige Korrektur.
Eine weitere Stärke von VATICAL® zeigt sich in der Behandlung von logischen Operationen und der Benutzer wird viel Freude mit bestimmten Systemeigenschaften erleben.
Die Funktionen 'AND', 'ANDC' und 'ADDC' verlangen zwingend gleichgeschlechtliche Variablen auf beiden Seiten. Die Form 'ST.MARTIN = ST.MICHAEL ADDC ST.HELENA erzeugt mindestens eine faustdicke Fehlermeldung. Als Besonderheit logischer Operationen bietet VATICAL® einige ungewöhnliche Optionen:
VATICAL® beinhaltet mehrere Anwendungen, deren Benutzerfreundlichkeit und ungewöhnlich bedienerorientierte Menüstruktur für sich sprechen:
VATICAL® erlaubt das Verbinden (=Linken) mehrerer Programme. Maximal 4 Programme können gelinkt werden, müssen allerdings unter einem festem Namen abgelegt werden. Der Linker wird durch den Befehl 'HIGHMASS' aufgerufen und verlangt in vorgegebener Reihenfolge nach den Programmen:
Der Linker wird durch den Befehl 'IN NOMINI' aufgerufen und erwartet zuerst die Identifizierung durch den Benutzer. Dann folgt die Überprüfung auf das Vorhandensein der einzelnen Programme, Speicherbedarf und richtige Syntax.
Diese Prozedur benötigt überraschend viel Zeit. Der Benutzer wird daher während dessen mit saisonal passenden Zitaten aus kulturell hochstehender Literatur unterhalten. Es wird ausdrücklich davor gewarnt, während dieser Zeit das Terminal zu verlassen, da VATICAL® gelegentlich und nach peinlich geheimgehaltenen Zufallsmustern Verständnisfragen an den Benutzer stellt und die Zeit bis zur Beantwortung speichert. Zuweilen reagiert VATICAL® unter bestimmten Umständen sehr übel, falls der Benutzer nicht 'available' sein sollte.
Allgemein können für den Umgang mit VATICAL® folgende 10 Regeln besonders hervorgehoben werden:
Friede sei mit euch.
Und mit Eurem Betriebssystem.
Amen!
(Autor leider unbekannt)