Ein verbreitetes Klischee besagt, dass Frauen viel Zeit vor dem Schminkspiegel verbringen. Überraschender ist da, dass auch Männer gut 30 Minuten für Kosmetik inklusive Gesichtspuder, Kajalstiften und gar Lippenstift aufwenden, wie ein Kosmetikverband in einer Studie unter 1763 Männern herausfand [1]. Mit der Lebenswirklichkeit der meisten Programmierer (und Programmiererinnen) hat das auf den ersten Blick wenig gemein. Tatsächlich aber diskutieren auch die mit mindestens gleicher Inbrunst Make-up-Fragen wie die Kundschaft beim Frisör am Samstagvormittag.
Da erörtern Code-Fanatiker Schreibweisen von Variablen, Einrückungstiefen und sprechende Funktionsnamen, wie andernorts um ayurvedisches Haarwasser oder revitalisierendes Gesichtstonikum gestritten wird. Den Sinn kosmetischen Tunens untersuchten jüngst russische Forscher von der Moskauer Akademie der Wissenschaften: Sie fanden heraus, dass dem Schminken tiefgehende psychologische Mechanismen zugrunde lägen [2]. Dazu zählt besonders eine Verbindung aus Selbstsicherheit und Ästhetik.
Psychologisches Make-up
Ob das auch bei Entwicklern zutrifft, untersuchten die Wissenschaftler allerdings nicht. Dennoch bestreitet kaum jemand, dass das Aussehen von Code mitentscheidend für den Erfolg oder Misserfolg einer Sprache ist - und zwar unabhängig von der Compiler-techischen Leistungsfähigkeit. Wer einmal eine kleine Umfrage unter Kollegen zu Lisp macht, erntet schnell ein Schmunzeln: "Ist das nicht die Sprache mit den vielen Klammern?" Den revolutionären Konzepten der funktionalen Programmierung stand ein unverhältnismäßiges Maß an Sonderzeichen gegenüber, ohne die es ebenfalls möglich gewesen wäre. Dass dies geht, zeigen die Mitglieder der Meta-Language-Familie wie SML oder Ocaml.
Aber oft sind es auch Trotz, Abgrenzungswillen oder schlicht Ignoranz der Welt gegenüber, wenn Sprachenpäpste eine krude Syntax verteildigen. So soll der Common-Lisp-Fachbuchautor Kenny Tilton einmal ironisch bemerkt haben, dass er selbst gar keine Klammern mehr sehe. Er frage sich aber weiter, wieso sich nur wenige Menschen durch all die Leerzeichen zwischen Wörtern in einer Zeitung gestört fühlen [3]. Diese Haltung ist nur aus kosmetischen Gründen heraus erklärbar.
Ebenso verhält es sich mit einem Autor, der auf der Aufrufsequenz »./configure && make && sudo make install« besteht, wo doch im interaktiven Betrieb letztlich »./configure; make; sudo make install« den gleichen Effekt hat. Selbst wenn die beiden Aufrufe einen minimalen Unterschied bedeuten - die lesbarere Form mit den Strichpunkten gibt ein paar zusätzliche Fehlermeldungen aus, wenn einer der ersten Befehle fehlschlägt. Selbst Compilerveteran Dijkstra verweist zu diesem Thema auf den vom Algol-Entwickler Landin geprägten Begriff des "syntaktischen Zuckers" und zitiert dazu noch Wittgenstein: "Was sich überhaupt sagen lässt, lässt sich klar sagen." [4]