Sie sind hier

Aprilscherz: Ein Jahr Arbeit, am Ende war alles ganz einfach

Bild von Markus Kohm

Vor einem Jahr bei einem TeX-Stammtisch wurde ich mal wieder von jemandem, der gerade seine Diplomarbeit mit KOMA-Script geschrieben hatte, mit Lob überschüttet. Als derjenige meinte, jetzt fehle eigentlich nur noch, dass KOMA-Script die Arbeit selbst schreibe, war mein "Kommt auch noch" natürlich nicht ernst gemeint. Aber manchmal kommt es anders, als man denkt ...

Als ich dann ein paar Wochen später in den Tiefen von pdfTeX 1.4 das Feature entdeckt habe, bitcode auszuführen, konnte ich es erst gar nicht glauben. Tatsächlich gab es nirgendwo eine offizielle Doku dazu. Eine Anfrage an Martin Schröder blieb zunächst unbeantwortet. Irgendwann habe ich mich dann an Hans Hagen gewandt. Der war überrascht, dass der Code überhaupt noch in pdfTeX zu finden ist. Eigentlich hatte er den als Experiment eingebaut, ehe luaTeX ins Leben gerufen wurde. Nach einigem Hin und her hat er mit ein paar wenige Informationen zur Verwendung überlassen. Nach einem Jahr an Experimenten ist es mir dann gelungen mit Hilfe dieses Features und der googleapi zur Dokumentsuche das auf einem TeX-Stammtisch witzig daher Gesagte tatsächlich zu implementieren.

In Anlehnung an das hinduistische Wort "Lir!Pa" (das Ausrufezeichen steht hierbei für einen Schnalzlaut), das den Lendenschurz eines Weisen Einsiedlers bezeichnet, habe ich das Paket "lirpa" genannt. Das Paket stellt eine gleichnamige Anweisung bereit, die genau ein Argument, das voll expandierbar sein muss, erwartet. Das Paket benötigt pdfTeX ab Version 1.4, funktioniert aber auch im DVI-Modus. Derzeit wird der Text nur in Absätze geliedert. Überschriften werden noch zu normalen Absätzen degradiert. Für eine Designstudie solle es aber genügen.

Ein Minimalbeispiel sähe so aus

\documentclass[a4paper]{article}
\usepackage{lirpa}
\begin{document}
\lirpa{KOMA-Script}
\end{document}

und produziert viele Seiten Text.

AnhangGröße
Datei lirpa.sty2.03 KB

Kommentare

Hallo Markus,

ich habe als Jurist seit Wochen eine Aufgabe, die ich als pure Strafarbeit ansehe. Folgerichtig habe habe ich Dein lirpa.sty verwendet, um mich inspirieren zu lassen.

Das entstandene pdf war leider so aktuell und zutreffend, dass mir Bedenken gekommen sind. Schau, § 6 Abs. 2 Rechtsdienstleistungsgesetz lautet:

(2) Wer unentgeltliche Rechtsdienstleistungen außerhalb familiärer, nachbarschaftlicher oder ähnlich enger persönlicher Beziehungen erbringt, muss sicherstellen, dass die Rechtsdienstleistung durch eine Person, der die entgeltliche Erbringung dieser Rechtsdienstleistung erlaubt ist, durch eine Person mit Befähigung zum Richteramt oder unter Anleitung einer solchen Person erfolgt. Anleitung erfordert eine an Umfang und Inhalt der zu erbringenden Rechtsdienstleistungen ausgerichtete Einweisung und Fortbildung sowie eine Mitwirkung bei der Erbringung der Rechtsdienstleistung, soweit dies im Einzelfall erforderlich ist.

Es stellt sich daher die Frage, ob TeX

  1. eine Person ist
  2. und die notwendige Qualifikation nach § 6 RDG hat.

Nun ist TeX turing-vollständig, was in der Wikipedia so definiert wird:
Turing-Vollständigkeit bezeichnet in der Berechenbarkeitstheorie die Eigenschaft einer Programmiersprache oder eines anderen logischen Systems, sämtliche Funktionen berechnen zu können, die eine universelle Turingmaschine berechnen kann. Anders ausgedrückt, das System und eine universelle Turingmaschine können sich gegenseitig emulieren.

Kann also TeX das System "Richter" emulieren?

Dazu ist es zunächst einmal notwendig, festzulegen, welche Komplexität richterliche Entscheidungen haben. Erfreulicherweise hilft uns hier die Rechtsprechung der Amts- und Landgerichte aus jüngster Zeit weiter. Gestern wurde eine Entscheidung des Landgerichts Karlsruhe, Auswärtige Kammer in Pforzheim, bekannt. Darin heißt es (Beschluss vom 23.03.2009, Az.: Qs 45/09, zu haben z.B. hier:
"http://www.internet-law.de/2009/03/lg-karlsruhe-durchsuchung-wegen.html") sinngemäß, dass die Polizei jedes Haus durchsuchen kann, wenn darin jemand wohnt, der eine Internetseite unterhält, auf der ein link zu finden ist, der zu einer anderen Seite verweist, die wiederum über eine beliebig lange Kette von links auf eine Seite verweist, die nach deutschem Recht rechtswidrige Inhalte enhält.

Interessanterweise unterhält das Landgericht Karlsruhe selbst Internetseiten mit links, die über eine vergleichsweise kurze Kette weiterer links auf Seiten verweist, die das Landgericht in dieser Entscheidung für rechtswidrig gehalten hat, vgl. z.B. hier: "http://www.heise.de/newsticker/foren/S-Sprungmarkenkette-vom-LG-Karlsruhe-zu-Wikileaks/forum-156379/msg-16514690/read/".

Offensichtlich ist die Entscheidung widersprüchlich, weil die Entscheidung des Gerichts über die Rechtswidrigkeit von Umständen ausgeht, die -- angewendet auf den Spruchkörper selbst -- die Rechtswidrigkeit der Handlungen des Gerichts selbst feststellen.

Übertragen auf die Fragestellung muss geprüft werden, ob die Turing-Vollständigkeit die Fähigkeit umfasst, in sich widersprüchliche Systeme zu emulieren.

Tja, wie ist das? Wahrscheinlich nicht. Damit verstieße Dein schönes Paket gegen das RDG, oder?

wundert sich

Alexander
(IAAL!)

Ich hatte es mir so schön ausgemalt: die Maschine schreibt meine Berichte für mich, während ich in der Sonne auf dem Balkon sitzend den Pflanzen beim Wachsen zusehen kann...hätte ja klappen können.

Gruß
Anke

Bild von Markus Kohm

pdfTeX 1.4 enthält keine Routinen, um Bitcode auszuführen. Das Paket trickst nur ein wenig mit der Eingabemethode (Hexcode-Eingabe) und \catcode, um zu verschleiern, dass es einfach nur 10000 Mal denselben Absatz ausgibt. Außerdem verwendet es noch die Anweisung \pdfunescaphehex, die es bereits seit pdfTeX 1.3 gibt. Dass ich stattdessen pdfTeX 1.4 verlangt habe, liegt einzig daran, dass diese Versionsnummer so schön zum ersten April passt.

Comments for "Aprilscherz: Ein Jahr Arbeit, am Ende war alles ganz einfach" abonnieren