
| Fast täglich werden neue Programmiersprachen vorgestellt und
so darf es nicht verwundern, daß auch Sprachen entstehen, deren
Verwendung eigentlich nur einem kleinen Kreis von Anwendern zugedacht ist.
Hier geht es um die neue Sprache VATICAL, deren Vorstellung Aufgabe dieses
Artikels ist. VATICAL erschien im Jahre des Herrn 1983 als Kreation der legendären Häuser CUSHYWARE & GRADDLERSOFT und erhielt 1984 trotz schwerer Bedenken ansonsten gut informierter Kreise die Serienreife. VATICAL ist in der endgültigen Fassung absolut und vorsätzlich inkompatibel zu allen bekannten Betriebssystemen, Expertenmeinungen und Prozessoren und hat, nicht zuletzt deshalb, die allerbesten Marktchancen. Ursprünglich war VATICAL nahe an PASCAL orientiert, jedoch konnte erfreulicherweise eine Annäherung an BASIC und FORTRAN erreicht werden, ohne jedoch auf Unzulänglichkeiten von PASCAL zu verzichten und sattsam bekannte Mängel von BASIC und FORTRAN zu übergehen. VATICAL ist weder über Compiler noch Interpreter lauffähig, sondern arbeitet über einen Absoluter, welcher im Gegensatz zu schäbigen FORTH-Versionen keinen Stapelspeicher besitzt, sondern eine Ewige Liste. Letztere kann weder überschrieben noch gelöscht werden. Allenfalls der Befehl DOOMSDAY erstellt eine kommentierte Liste der erfolgten Eingaben und läßt VATICAL entsprechende Entscheidungen treffen, die sich allerdings nicht unbedingt mit Absicht und Willen des Benutzers decken müssen. VATICAL besitzt verschiedene Schnittstellen. Z.B. wird das Druckerinterface über PRAY angesprochen. VATICAL überprüft alle Ausgaben an den Drucker und behält sich leichte Korrekturen und Kommentare vor. Zur nicht geringen Überraschung der Erfinder besitzt VATICAL auch ein Disketten-Interface und betreibt dieses über die Befehle MISSION und MERCY. Es können auschließlich indexgeprüfte Holy-Access-Dateien bearbeitet werden. VATICAL besitzt einen Default-Index und vermerkt Änderungen an ihm in der Ewigen Liste. VATICAL erlaubt den Betrieb von maximal drei Laufwerken, welche bindend die Bezeichnungen FATHER, SON und SAINT haben. Dateien und andere Files werden grundsätzlich über das Laufwerk SAINT bearbeitet. Das Laufwerk SON bietet Hilfs- und Utility-Funktionen; das Laufwerk FATHER verwaltet das Betriebssystem. Im Gegensatz zu herkömmlichen und meist veralteten Betriebssystemen kennt VATICAL weder Inhaltsverzeichnis noch Sektoren oder Spuren. Der Diskettenplatz wird in sieben Bücher aufgeteilt und jene wieder in Kapitel. Die jeweiligen Inhalte der Kapitel verwaltet das Laufwerk FATHER in der Datei APOCALYPSE. Selbige wird grundsätzlich und vollständig mitgeliefert und erlaubt dem Benutzer keinerlei Änderungen. Zu jener Datei nicht konforme Aufzeichnungen werden nicht am Bestimmungsort abgelegt, sondern landen in der Ewigen Liste. VATICAL erlaubt die Befehlseingabe sowohl in lateinischer als auch in englischer Sprache. Im Folgenden wird jeweils der bekanntere Begriff angegeben; weitere Übersetzungshilfen leistet jedes bessere Lexikon. Nach dem Einschalten des Rechners meldet sich VATICAL mit einem Cursor + und erwartet den Aufruf oder die Eingabe eines Programmes. Programme müssen grundsätzlich mit «LITURGY:» beginnen und mit «AMEN.» enden. Im Programm selbst darf nach Herzenslust umhergesprungen werden; auf festgelegte oder zufällige Labels, auf Zeilennummern und an jede beliebige Stelle einer Zeile. Sieht man das Programm als beschriebenes Blatt Papier an, so darf mit VATICAL praktisch beliebig darauf gesprungen werden - und nicht nur dies - es darf auch beliebig über die Programmgrenzen hinausgesprungen werden, was immer auch dies bedeuten und im einzelnen bewirken mag. So kennt VATICAL folgende Sprungbefehle:
GO_LEFT GO_RIGHT
GO_SUB GO_UP
GO_DOWN GO_AWAY
GO_HOME GO_ASCENSION
GO_HELL GO_GO
GO_WEST GO_ELSE
GO_ANYWHERE GO_NOT
WAITING_FOR_GODOT
Ähnlich den freiprogrammierbaren Sprunganweisungen kann ein beliebiger
Teil des Programms als Unterprogramm erklärt werden, z.B. alles was mehr
als 20 Zeichen weit rechts in einer Zeile steht. Grundsätzlich kann
jeder Teil eines Programmes einen beliebigen anderen Teil zum Unterprogramm
deklarieren. Derjenige Programmteil, der die meisten Unterprogramme aufruft,
ist der Hauptprogrammteil. Demgemäß existiert in VATICAL kein
Befehl wie RETURN, sondern es gibt die Rücksprunganweisungen:
SEARCHME WAY_NEXT
RESTART DO_BEST
TRY_AGAIN
VATICAL bietet dem geneigten Benutzer zahlreiche Möglichkeiten zur
Schleifenbildung in Programmen. Neben der FOR-NEXT-DO Schleife finden
sich Befehle wie:
FOR-NEXT-DONOT FOR-NEARER-DO
UNTIL-BETTERUSE-DO UNTIL-NOERROR-DO
FOR-WHATREASON WHY-FOR
WHAT-ELSE WHY-NOT-PLEASE
WHY-DON'T-WE-DO-IT WHAT-SHALL'S
TRY-UNTIL HOPE-LESS
UNTIL-NOFUTURE-DO JUMP-ANYWHERE-TILL
WAIT-FOR-DOOMSDAY IFNOTNEXT-THENNEXT
VATICAL besitzt zahl- und folgenreiche Meldungen von Syntaxfehlern des
Programmes, gelegentlichen Systemabstürzen, Dateiüberschreitungen
und generell mitgelieferten Fehlern des Betriebssystems.Grundsätzlich meldet VATICAL einen Fehler wie folgt:
MY SCORE: xxxx YOUR SCORE: xxxx CHAMPION'S SCORE: xxxx **** ALL THE BEST **** **** SO LONG ****Unnötigt zu bemerken, daß jedweder Fehler unnachsichtig in der Ewigen Liste eingetragen wird. Findet VATICAL besonders elegante und funktionstüchtige Programme (Maximalwert: 3 Fehler pro Zeile), so kann der Benutzer mit dem Befehl INDULGENCE Einträge der Ewigen Liste stornieren. Bei Überlauf des Variablenspeichers betreibt VATICAL im löblichen Gegensatz zu Schundsprachen wie BASIC keine «Garbage Collection», sondern dreht diese Funktion um in eine «Value Collection». Alle Variableninhalte, die VATICAL als brauchbar ansieht (z.B. reale, positive Zahlen oder Zeichenketten mit originellem Inhalt und kulturellem Niveau), verlegt das Betriebssystem in die Datei RECORDS auf der FATHER-Diskette. Die restlichen Einträge werden in der Ewigen Liste niedergelegt und anschließend im Speicher gelöscht. Einträge, die der Benutzer weiterverarbeiten will, hätten vorher in die Datei ESTATE abgelegt werden müssen. 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 Betriebssystem diese 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. Alle Variablennamen müssen mit «St.» beginnen. Daran angehängt wird der eigentliche Variablenname und zwar
Integerzahlen Namen von Heiligen (1500 - 1800) Reale Zahlen Namen von Heiligen (1800 - 1900) Genaue Zahlen Namen von Heiligen (1900 - jetzt) Characters Namen bedeut. Kirchenpersonen Textketten Namen von Propheten (Alt. Test.) einfache Arrays Namen von Päpsten mehrdim. Arrays Namen von ApostelnBesonderes Augenmerk gilt hierbei den Characterzeichen. Sollte hier eine Variable mit St. LUTHER oder schlimmer noch bezeichnet werden, so hat dies für den Benutzer Folgen mindestens katastrophaler Art. Alle Variablennamen sind auf- und abwärtskompatibel, jedoch vermerkt VATICAL hierbei Verwechslungen mit NOT_YET oder aber mit FLATTERY. Die Darstellung von Zahlen im negativen Bereich erfolgt über den Zusatz TEMPTATION. Die Schreibweise von «TEMPTATION OF St. KEVIN = 10000» ergibt für die Integervariable St. KEVIN den Wert -10000. 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 anschließend in St. RESULT. Die Zuweisung des Wertes NULL zu einer Variablen bedarf der Form «St. KEVIN IN POVERTY». VATICAL erlaubt die Darstellung von negativen Realwerten ausschließlich über die Bezeichner JUDAS, KAIN und ROCKNROLL. Alle Variablenbezeichner gelten nicht nur global im Programmbereich, sondern universal, also auch nach Abstellen des Rechners. Die Funktionen AND, ANDC, ADD und ADDC verlangen unbedingt gleichgeschlechtliche Variablen auf beiden Seiten. Die Form «St. MARTIN = St. MICHAEL ADDC St. HELENA» erzeugt mindestens eine faustdicke Fehlermeldung. Im allgemeinen sollte das Resultat einer logischen Operation in den Bezeichner CHASTE geschrieben werden, da ansonsten u.U. peinliche Verwechslungen entstehen können. Eine weitere Stärke von VATICAL zeigt sich in der Behandlung von logischen Operationen und der geneigte Benutzer wird viel Freude mit gewissen Systemeigenheiten erleben. Als Besonderheit logischer Operationen bietet VATICAL:
ADDAF ADD-AND-FORGET
NENA NEITHER-NOR-ANYTHING-ELSE
ENDC END-OF-CARRY
CAC CASH-AND-CARRY
SUBIF SUB-IF-YOU-WANT
VATICAL beinhaltet einen leistungsfähigen Programmeditor, der über
den Befehl MEA CULPA aufgerufen wird. Der Programmeditor in VATICAL
unterscheidet zwischen den
In allen Fällen verlangt der Programmeditor die Eingabe des Benutzernamens. Jener wird - keine Frage - in der Ewigen Liste abgelegt. Der Programmeditor vergleicht Sinn, Art, Zweck, Ausführung und Effizienz des Programmes und unterstützt demgemäß den Benutzer. Der Programmeditor listet zuerst die fehlerhafte Zeile auf dem Bildschirm aus. 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 eingeleitet. 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 selbsttätig Fehler ein und startet es neu. Der Befehl CONFESS schließlich listet alle augenscheinlichen und wahrscheinlichen Fehler auf und erlaubt über die Eingabe AVE MARIA die sofortige Korrektur. VATICAL beinhaltet mehrere Anwenderprogramme, deren intensive Benutzerfreundlichkeit und ungewöhnlich bedienerorientierte Menüstruktur für sich sprechen. Im Einzelnen enthält das Programmpaket:
Der Linker wird aufgerufen durch den Befehl HIGHMASS und verlangt in gegebener Reihenfolge nach den Programmen:
KYRIE Variablen, Definitionen usw.
GLORIA Funktionen und Prozeduren
CREDO Programm 1
SANCTUS Programm 2
BENEDICTUS Programm 3
AGNUS DEI Programm 4
Nach dem Aufruf erwartet der Linker zuerst die Identifikation des Benutzers.
Alsdann erfolgt eine Prüfung der einzelnen Programme auf Vorhandensein,
Speicherbedarf und richtige Syntax.Diese Prozedur benötigt auch für den erfahrenen Programmierer überraschend viel Zeit. Der geneigte Benutzer wird daher während dieser Zeit 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 geheimgehaltenem Zufallsmuster Verständnisfragen an den Benutzer stellt und die Zeit bis zur Beantwortung erstens speichert und zweitens unter Umständen übel zu reagieren pflegt. Allgemein können für den Umgang mit VATICAL folgende 10 Regeln hervorgehoben werden:
|
