Namensfindung und Programmiersprachen
In unserem vierteiligen Special zur Namensgebung von Programmiersprachen werfen wir einen Blick auf die teils kuriosen Namen, die die Welt der Informatiker und Mathematiker hervorgebracht hat.
Kreativität bei der Namensgebung
Die Namen von Programmiersprachen sind nämlich keinesfalls so dröge, wie man es vielleicht vermuten würde.
Die Bezeichnungen reichen weit über einfallslose Buchstabenkombinationen hinaus und warten mit Popkultur-Referenzen, Hommagen an berühmte Vorbilder und Insiderwitzen auf. Eine unglaubliche Namensvielfalt erwartet den Kenner hier!
Dennoch: Auch im Namensdschungel der Programmier-, Abfrage- und Skriptsprachen finden sich nach eingehender Betrachtung einige Kategorien, in die sich die meisten Namen einordnen lassen. Einige Sprachen jedoch folgen keiner speziellen Namensgebungskonvention – hier hatten die Entwickler freie Hand, wie sie ihr Baby benannt haben.
Beliebte Namensgebungsmethode: Akronyme
Zu den Programmiersprachen, die ein Akronym als Namen tragen gehören beispielsweise FORTRAN (Formula Translator) oder LISP (List Processor). Nachfolger dieser Sprachen halten sich allerdings nicht immer an die Akronym-Konvention, und so heißt ein Abkömmling der Sprache FORTRAN mit einem gewissen Augenzwinkenden "Fortress" (engl. "Festung"), um die gesteigerte Fokussierung auf Sicherheit zu betonen.
Raffinierte Abkürzungen: Apronyme
Besonders beliebt bei der Verwendung von Abkürzungen ist die Unterklasse der Apronyme, d.h. Akronyme, die ihrerseits wiederum ein bereits existierendes Wort ergeben. Dazu zählen Klassiker wie BASIC (Beginner's All-purpose Symbolic Instruction Code) oder auch SEQUEL (Structured English Query Language), die ehemalige Bezeichnung von SQL.
Im Bereich der Programmiersprachen sind häufig auch die ansonsten eher selten anzutreffenden rekursiven Akronyme zu finden. Rekursion ist ein in der Informationstechnologie oft anzutreffendes Konzept, bei dem eine Funktion durch sich selbst definiert wird. Da Rekursion in der Programmierung meist zu eleganten Problemlösungen führt, sind rekursive Akronyme eine beliebte Namensgebungsmethode in diesem Bereich. Der Name der Querysprache SPARQL ist beispielsweise ein Rekursives Akronym für SPARQL Protocol And RDF Query Language.
Programmierkonzept im Namen: Rekursive Akronyme
Diese Neuinterpretation des Akronyms wird als Backronym bezeichnet, welches ein Portemanteau-Wort aus "back" (engl. für "zurück") und "Acronym" ist. Darüber hinaus ist die neue Bedeutung von PHP außerdem rekursiv, da ein Teil des Namens sich selbst definiert. Ein doppelt raffinierter Name für eine Skriptsprache!
Die Programmiersprachen-Familie C und ihre Namensgebung
Zwar nennt sich ein wenig bekannter Nachfolger von C schlichtweg D, doch die meisten C-Dialekte weisen stattdessen eine abgewandelte Schreibweise ihres Urvaters auf. Regelmäßige Standardisierungen der Sprache um das Wachstum der zahlreichen Dialekte einzudämmen, werden mit Jahreszahlen voneinander abgegrenzt:
So gibt es C89, C95, C99 und das in puncto Namensgebung etwas aus der Reihe tanzende ISO-C. Objective-C hingegen bekam seinen Namen schlicht deshalb verliehen, da es C um das Konzept der Objektorientierung erweitert.
Noch mehr C-Abkömmlinge, noch mehr Namen
Ebenfalls weit verbreitet ist die Sprache C# (sprich C-Sharp), die ihren Namen aus der Musik erhielt: Dort wird durch ein Kreuz (♯) angezeigt, dass eine Note um einen Halbton erhöht wird. Analog steht C# also für eine erhöhnte Version von C. Andere Quellen vermuten, dass das Doppelkreuz eine doppelte Inkrementierung von C anzeigen soll.
Das Alphabet hat 25 weitere Buchstaben...
Auf welche Schriftsysteme wird man wohl ausweichen, wenn alle 26 Grapheme unseres Alphabets aufgebraucht sind? Das Chinesische wäre wohl ein guter Kandidat: Es besitzt mehrere Zehntausend Grapheme.
Programmiersprachen und Mathematiker
Das bekannteste Beispiel für diese Praktik der Namensgebung, die berühmte Persönlichkeiten honoriert, dürfte der französische Gelehrte Blaise Pascal sein. Von seinem Nachname leitet einer ganzen Familie von Programmiersprachen ihre Bezeichnung ab. Dies führt zu wohlklingenden Namen wie TurboPascal oder ObjectPascal.
Weitere prominente Namensgeber für Programmiersprachen sind Haskell Curry, Kurt Gödel und Alan Turing. In diesen Fällen haben die Sprachen es allerdings nicht zu solchem Weltruhm gebracht wie die Pascal-Dialekte.
Namenspatin Lovelace: Programmiererin oder Pornostar?
Weniger ruhmreich hingegen ist der Hintergrund einer anderen Dame namens Lovelace, deren Name ebenfalls für eine Programmiersprache Pate stand: Die Sprache Linda hat die zweifelhafte Ehre, eine Hommage an die Pornodarstellerin Linda Lovelace zu sein.
Noch mehr unanständige Namen...
Weit harmloser sind jedoch die Namen von Sprachen, die sich auf einfache Objekte und Konzepte aus unserer Welt beziehen: Bäume (Oak, Maple, Cedar), Edelsteine (Ruby, Perl) oder Emotionen (Bliss, Joy, Hope) sind gern verwendete Kategorien für der Benennung von formalen Sprachen. Da kommt ein Gefühl von Natur und weiten Landschaften auf, während man in staubigen Kellerräumen vor sich hin entwickelt...
Name für eine Programmiersprache? - Alles ist erlaubt!
Ein Idiom namens Nemerle hingegen bezieht sich auf einen Erzmagier im Erdsee-Romanzyklus von Ursula K. LeGuin. Der Magier schreibt sich im Original zwar mit Doppel-M, doch zur besseren Unterscheidung wurde der Name für die Programmiersprache abgewandelt.
Java ist doch keine Insel...
Java sollte übrigens nicht mit JavaScript verwechselt werden. Letztere ist eine Skriptsprache, die ehemals LiveScript hieß und aus Marketinggründen umbenannt wurde. Inhaltlich weicht sie jedoch stark von Java ab.
Wie würden Klingonen programmieren?
Last but not least gab es um die Jahrtausendwende noch die kuriose Sprache var'a'q:
Aus einem Gedankenexperiment, wie wohl eine Programmiersprache der fiktiven Rasse der Klingonen aus Star Trek aussehen würde, entwickelte sich var'a'q. Dieser Name hat jedoch keine Bedeutung auf Klingonisch, obwohl die fiktive Sprache theoretisch ausgereift genug wäre, einen Namen bereitzustellen.
Man soll daher annehmen, dass var'a'q nach einem klingonischen Mathematiker benannt ist, ganz in der Tradition der Namensgebung von Sprachen wie Pascal, Turing oder Ada.
Welches ist euer favorisierter Name für eine Programmiersprache? Findet ihr eine schöne Geschichte hinter einem Namen wichtiger (wie bei brainf**k), oder muss der Aufbau logisch erscheinen (wie bei C und seinen Verwandten)?
Bildnachweise:
Python-Logo: Lizenz: GNU General Public License version 2, Quelle: Wikipedia
Blaise Pascal: Lizenz: Public Domain (Copyright epxired), Quelle: Wikipedia
Ada Lovelace: Lizenz: Public Domain, Urheber: www.fathom.com, Quelle: Wikipedia
Ruby-Logo: Lizenz: Creative Commons Attribution-Share Alike 2.5 Generic, Urheber: Yukihiro Matsumoto, Ruby Visual Identity Team, Quelle: Wikipedia
C-Cover: Lizenz: Public Domain, Quelle: Wikipedia
C#: Lizenz: Public Domain, Urheber: Allmightyduck, Quelle: Wikipedia
Fortran: Lizenz: Public Domain, Urheber: Muhandis, Quelle: Wikipedia
PHP: Lizenz: Public Domain, Urheber: Mysid Quelle: Wikipedia