VATICAL™ Programmiersprache


VATICAL™ - Die Apokalypse der Programmiersprachen

Version 2.2

1. Allgemein

VATICAL™ erschien im Jahre des Herrn 1983 als Creation der legendären Softwarehäuser CUSHYWARE & GRADDLESOFT™. Trotz Bedenken ansonsten 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 vorhandenen 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 dass auf die Unzulänglichkeiten von Pascal verzichtet werden muß. 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. Sie decken sich nicht unbedingt mit Absicht und Willen des Benutzers.

2. Schnittstellen

VATICAL™ besitzt verschiedene Schnittstellen. So 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 gelinden Überraschung der Erfinder verfügt sie auch über ein Disketten-Interface und betreibt es über die Befehle 'MISSION' und 'MERCY'. Allerdings können ausschließlich indexgeprüfte Holy-Acess-Dateien bearbeitet werden. Der Default-Index von VATICAL™ vermerkt Änderungen an ihm in der 'EWIGEN LISTE'.

VATICAL™ unterstützt den Betrieb von maximal drei Laufwerken, die bindend die Bezeichnung 'FATHER', 'SON' und 'SAINT' haben. Dateien 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 herkömmlichen und meist veralteten Disk-Betriebssystemen benötigt VATICAL™ weder ein Inhaltsverzeichnis noch Sektoren oder gar Spuren. Der Diskettenplatz wird in sieben Bücher aufgeteilt und jedes Buch wieder 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'.

3. Anweisungen

VATICAL™ erlaubt die Befehlseingabe sowohl in lateinischer als auch englischer Sprache. Im Manual wird der jeweils 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.

3.1 Sprungbefehle

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 aus dem Programm herausgesprungen werden, was auch immer dies bedeuten oder bewirken mag. So kennt VATICAL™ die ungewöhnlichen Befehle wie:

GOLEFT GORIGHT
GOSUB GOAWAY
GOUP GODOWN
GOHOME GOASCENSION
GOHELL GOGO
GOWEST GOELSE
GOANYWAY GONOT
GOTOGODOT

Ä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 Programms einen beliebigen anderen Teil als Unterprogramm definieren. Der Programmteil, der die meisten Unterprogramme findet, ist das Hauptprogramm.

3.2 Rücksprungbefehle

Demgemäß existiert in VATICAL™ kein Befehl 'RETURN', sondern es gibt die Rücksprunganweisungen:

SEARCHME WAY NEXT
RESTART DOBEST
TRY AGAIN

3.3 Schleifenanweisungen

VATICAL™ bietet dem geneigten Benutzer zahlreiche Möglichkeiten zur Schleifenbildung innerhalb der Programme:

FOR-NEXT-DO FOR-NEXT-DO-NOT
FOR-NEARER-DO UNTIL-BETTER-USE-DO
UNTIL-NO-ERROR-PERFORMFOR-WHAT-REASON
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 WAIT-FOR-GODOT

4. Fehlerbehandlung

Glücklicherweise besitzt VATICAL™ zahl- und folgenreiche Meldungen von Syntaxfehlern des Programms, gelegentlichen Systemabstürzen, Dateiüberschreibungen und generell mitgelieferten Fehlern des Betriebssystems.

Grundsätzlich meldet VATICAL™ einen auftretenden Fehler wie folgt:

MY SCORE     YOUR SCORE    CHAMPION'S SCORE
 xxxx          xxxx              xxxx

              *** ALL THE BEST ***
               **    SO LONG   **

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 (TM) als brauchbar ansieht (z.B. reale, positive Zahlen oder Zeichenketten mit originellem Inhalt und kulturellem Niveau), verlegt das Betriebssystem in die Datei 'RECORDS' aud der 'FATHER' Diskette. 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.

5. Variablen

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 die Variable erkennen.

Alle Namen von Variablen müssen im Programmkopf vereinbart werden. VATICAL (TM) ü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:

Integerzahlen Namen von Heiligen (1500-1800)
Reale Zahlen Namen von Heiligen (1800-1900)
Genaue Zahlen Namen von Heiligen (1900-heute)
Charakterzeichen Namen bedeutender Kirchenpersonen
Textketten Namen von Propheten (Altes Testament)
Einfache Arrays Namen von Päpsten
Mehrdim. Arrays Namen von Aposteln (Neues Testament)

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ärtskompatibel, allerdings vermerkt VATICAL™ hierbei Verwechslungen mit 'NOT YET' oder 'FLATTERY'.

6. Operatoren

VATICAL™ verfügt über eine Reihe logischer Operatoren wie z.B.:

ADDAFADD-AND-FORGET
NENA NEITHER-NOR-ANYTHING-ELSE
ENDC END-OF-CARRY
CAC CASH-AND-CARRY
SUBIFSUB-IF-YOU-WANT

Die Darstellung von Zahlen im negativen Bereich erfolgt durch den Zusatz 'TEMPTATION'. Die Schreibweise von 'TEMPTATION OF ST.KEVIN = 1000' ergibt für die Integervariable ST.KEVIN den Wert '-1000'. Variablenwerte können in VATICAL™ grundsätzlich nur addiert werden, und zwar in dieser 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 POETRY'

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 Abstellen des Rechners.

Eine weitere Stärke von VATICAL™ zeigt sich in der Behandlung von logischen Operationen, und der geneigt Benutzer wird viel Freude mit bestimmten Systemeigenheiten erleben.

Die Funktionen 'AND', 'ANDC', 'ADD' 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 Operationen:

'ADDAF'= ADD-AND-FORGET
'CAC' = CASH-AND-CARRY
'ENDC' = END-OF-CARRY
'NENA' = NEITHER-NOR-ANYTHING-ELSE

7. Entwicklungsumgebung

7.1 Editor

VATICAL™ beinhaltet einen leistungsfähigen Programmeditor, der über den Befehl 'MEA CULPA' aufgerufen wird. Der Editor unterscheidet zwischen:

#  = einfachen Sünden
$  = Erbsünden
$$ = Todsünden

Sollten im Programm Todsünden auftreten, muß der Benutzer von VATICAL™ den Editor mit 'MEA MAXIMA CULPA' aufrufen und anschließend je nach Zahl der Fehler die Eingabe 'ROSARY = Fehleranzahl' eingeben.

In allen Fällen verlangt der Programmeditor die Eingabe des Benutzernamens. Er wird 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 dem Monitor 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 Eingabe des Befehls 'SAKE' abgeschlossen.

7.2 Debugger

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 uns 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 von 'AVE MARIA' eine sofortige Korrektur.

7.3 Linker

VATICAL™ erlaubt das Verbinden (=Linken) mehrerer Anwenderprogramme. Maximal 4 Programme können gelinkt werden, müssen allerdings unter einem festen Programmnamen abgelegt werden. Der 'LINKER' wird durch den Befehl 'HIGHMASS' aufgerufen und verlangt in vorgegebener Reihenfolge nach den Programmen:

KYRIE Variablenvereinbarungen, Arraydimensionierung, Konstantendefinition, Dies & Das
GLORIA Funktionen und Prozeduren
CREDO Programm 1
SANCTUS Programm 2
BENEDICTUSProgramm 3
AGNUS DEI Programm 4

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 geneigte Benutzer wird daher während dieser Zeit mit saisonal passenden Zitaten aus kulturell hochstehender Literatur unterhalten. Es wird ausdrücklich gewarnt, während dieser Zeit das Terminal zu verlassen, da VATICAL™ gelegentlich und nach peinlich genau 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.

8. Zusatzprogramme

VATICAL™ beinhaltet mehrere Anwenderprogramme, deren intensive Benutzerfreundlichkeit und ungewöhnlich bedienerorientierte Menüstruktur für sich sprechen:

  1. Das Systemprogramm VATICAL™ selbst.

  2. VATICALC™ - ein spezielles tabellenorientiertes Rechenprogramm zur Verarbeitung von Kollektivspenden. Sowohl Spendenbetrag als auch Name, Adresse, Beruf, Nettoeinkommen und streng vertrauliche Angelegenheiten des Spenders werden in der 'EWIGEN LISTE' vermerkt. Auf der Basis der Jahreskollektsummen können Prognosen über zu erwartende Einnahmen getroffen werden. Ein spezieller Programmteil erlaubt die finanzielle Berechnung von Kirchenrenovierungen und den Vergleich mit den erwartbaren Kollektenbeiträgen.

  3. BIBLIOSTAR™ - ein Textverarbeitungsprogramm, das synonym zu SPELLSTAR™ bereits alle relevanten Bibeltexte enthält und die Ausarbeitung einer 20-Minutenpredigt in weniger als 2 Minuten erlaubt. Eine automatische Übersetzung Latein / Deutsch ist in dieser Option bereits enthalten.

  4. MULTICONFESS™ - eine Datenbank zur schnellen Speicherung und Bearbeitung von Daten, die während Beichten und vertraulichen Gesprächen auftauchen. Das Programm speichert die relevanten Daten in der 'EWIGEN LISTE'.

  5. PEACEMAN™ - ein Spielprogramm, in dem angreifende Kommunisten und Atheisten durch die schnelle Eingabe von Bibelzitaten abgewehrt werden müssen.

  6. INRI-1-2-3™ - ein äußerst anwenderorientiertes Programm zur schnellen Berechnung von Ablässen, zu betenden Rosenkränzen und Zahl, Länge und Durchmesser von Sühnekerzen. Beinhaltet eine umfangreiche und sich selbst erweiternde Datei von gängigen Sünden und Lastern. Ein Muß für die datenverarbeitende Beichte. Alternativ kann auch die Zahl der zu erwartenden Jahre im Fegefeuer gelistet oder auch - für das Beichtkind - über den Drucker ausgegeben werden.

  7. HOLYSOFT™ - ein Expertensystem für den kirchlichen und geistlich orientierten Anwender. Basiert auf Frage- und Antwortsystem und liefert in kürzester Zeit und ca. 3 Detailrecherchen schlagkräftige und schlüssige Argumente, denen sich auch der hartgesottenste Ignorant und Klerikalspötter nicht verschließen kann.

  8. TRUEBASE-III™ - eine selektive Datenbank, bei der die Ein- und Ausgabe streng konform zur 'EWIGEN LISTE' läuft. TRUEBASE-III packt die Dateien auf kleinstes Format zusammen. Nur wirklich speicherwürdiges wird gespeichert.

  9. SYSZINK™ - ein Programm, das fast unbeschränkten Zugriff und Editierungshilfen auf die 'EWIGE LISTE' bietet. Voll menugesteuert bereitet es die bisherigen Fehlermeldungen und Fehlgriffe vor dem Benutzer aus.

9. Die 10 Regeln

Allgemein können für den Umgang mit VATICAL™ die folgenden 10 Regeln besonders hervorgehoben werden:

  1. Neben VATICAL™ sollten keine anderen Betriebssysteme im Rechner laufen.

  2. Von VATICAL™ darf keine Raubkopie erstellt werden.

  3. An Sonn- und Feiertagen darf VATICAL™ nicht benutzt werden.

  4. Die Hersteller von VATICAL™ versprechen seine Lauffähigkeit. Daran sollte auf keinen Fall gezweifelt werden.

  5. Dateien und Programme sollten weder überschrieben noch gelöscht werden. Dies besorgt zu gegebener Zeit das Betriebssystem selber.

  6. Aus anderen Betriebssystemen dürfen weder Dateien noch Programme kopiert werden.

  7. Aus VATICAL™ dürfen weder Programme noch Dateien auf andere Betriebssysteme kopiert werden.

  8. In Dateien dürfen keine widersprüchliche Daten geschrieben werden.

  9. Andere Betriebssysteme sind auch nicht besser.

  10. Andere Programme sind immer schlechter.

10. Schlußwort

 Friede sei mit Euch.
 Und mit Eurem Betriebssystem.
 Bis zum nächsten Absturz.
 Amen.

 

A. Nachtrag zu VATICAL™ (Version 2.0)

  1. In der Auflistung der Sprunganweisungen hat sich ein Fehler eingeschlichen. Die Anweisung 'GOLEFT' ist unter VATICAL™ nicht ausführbar, da sich die katholische Kirche noch nie nach links bewegt hat.

  2. Von einer Vielzahl potenzieller VATICAL™-Benutzer und Leser dieser Abhandlung kam die Frage nach einer EPROM-fähigen Version von VATICAL™. So etwas ist weder verfügbar, noch in absehbarer Zeit geplant. Der derzeitige Vertrieb erfolgt mittels eines entsprechend programmierten WOMs (Write Only Memory). Da alle gebräuchlichen Prozessoren (wie z.B. Xeon, Pentium oder Z80) aber vor der Abarbeitung eines Befehls diesen aus dem Speicher lesen wollen, ergeben sich gewisse Probleme. Ein VATICAL™-tauglicher Prozessor beschäftigt sich nicht mit solchen Niederungen wie Opcode-Fetch, sondern befindet sich in einer ständigen Gebetsschleife und bleibt dort bis ihn die nächste göttliche Eingebung erreicht. Alsdann fährt er fort, diese Erleuchtung abzuarbeiten.

Überhaupt ist VATICAL™, wie schon im "VATICAL™ Users and Reference Report" beschrieben, vorsätzlich und endgültig inkompatibel zu allen Betriebssystemen, Sprachen, etc. Sollte es trotz alledem einem Programmierer gelingen, eine lauffähige Version zu erzeugen, wird hiermit hoch und heilig versprochen, dass alsdann zur Tilgung dieses Makels der Standard entsprechend abgeändert wird und die volle und unbeschränkte Inkompatibilität wiederhergestellt wird.

Für jetzt und immerdar gegeben.

im Namen des Herrn.

 


QUELLE: Bayerische Hacker-Post sowie diverse modifizierte Versionen im Internet

 
 
Seitenanfang Zuletzt verändert: 24.11.2011