PlusPedia wird derzeit technisch modernisiert. Aktuell laufen Wartungsarbeiten. Für etwaige Unannehmlichkeiten bitten wir um Entschuldigung; es sind aber alle Artikel zugänglich und Sie können PlusPedia genauso nutzen wie immer.
Neue User bitte dringend diese Hinweise lesen:
Anmeldung - E-Mail-Adresse Neue Benutzer benötigen ab sofort eine gültige Email-Adresse. Wenn keine Email ankommt, meldet Euch bitte unter NewU25@PlusPedia.de.
Hinweis zur Passwortsicherheit:
Bitte nutzen Sie Ihr PlusPedia-Passwort nur bei PlusPedia.
Wenn Sie Ihr PlusPedia-Passwort andernorts nutzen, ändern Sie es bitte DORT bis unsere Modernisierung abgeschlossen ist.
Überall wo es sensibel, sollte man generell immer unterschiedliche Passworte verwenden! Das gilt hier und im gesamten Internet.
Aus Gründen der Sicherheit (PlusPedia hatte bis 24.07.2025 kein SSL | https://)
Bei PlusPedia sind Sie sicher: – Wir verarbeiten keine personenbezogenen Daten, erlauben umfassend anonyme Mitarbeit und erfüllen die Datenschutz-Grundverordnung (DSGVO) vollumfänglich. Es haftet der Vorsitzende des Trägervereins.
PlusPedia blüht wieder auf als freundliches deutsches Lexikon.
Wir haben auf die neue Version 1.43.3 aktualisiert.
Wir haben SSL aktiviert.
Hier geht es zu den aktuellen Aktuelle Ereignissen
Syntaktischer Zucker
Syntaktischer Zucker sind Syntaxerweiterungen in Programmiersprachen, welche der Vereinfachung von Schreibweisen dienen.[1] Diese Erweiterungen sind alternative Schreibweisen, die aber nicht die Ausdrucksstärke und Funktionalität der Programmiersprache erweitern.[2]
Syntaktischer Zucker lässt sich durch reine Textumformungen auf Grundelemente der Sprache zurückführen („desugar“, dt. entsüßen).[2]
Der Begriff syntactic sugar wurde in den 1960er Jahren vom britischen Informatiker Peter J. Landin[3][2] geprägt.
Beispiele
Syntaktischer Zucker in C
Ein Beispiel für syntaktischen Zucker ist die Behandlung von Feldern in der Programmiersprache C.[4] C unterscheidet streng genommen nicht zwischen Zeigern auf Objekte und Zeigern auf Felder von Objekten. Ist die Variable p vom Typ „Zeiger auf Byte“ (Typ char *), so kann man mit *(p+3) auf das dritte Byte im Speicher nach der Adresse p zugreifen. Dies kann man in C auch kurz schreiben als p[3].
Ein weiteres Beispiel für syntaktischen Zucker ist die Infixnotation. Bei der Infix-Schreibweise steht der Operator zwischen den Operanden, z. B. 3 + 5. Dies kann von einem Übersetzer direkt in die klassische Schreibweise eines Funktionsaufrufes add(3,5) übertragen werden.
do-Notation in Haskell
In der funktionalen Programmiersprache Haskell werden für viele Zwecke, insbesondere jedoch für die Ein- und Ausgabe sogenannte Monaden verwendet. Um beispielsweise eine Zeile und einen Buchstaben von der Standardeingabe einzulesen, den Buchstaben vorne an die Zeile anzuhängen und das Ergebnis wieder auszugeben, müsste man schreiben
getLine >>= \s -> getChar >>= \c -> putStrLn (c:s)
Besser umbrochen ergibt das:
getLine >>=
\s -> getChar >>=
\c -> putStrLn (c:s)
Da man solche Konstrukte sehr häufig benötigt, wurde die sogenannte do-Notation eingeführt. Folgender Code ist exakt äquivalent zum obigen Beispiel:
do
s <- getLine
c <- getChar
putStrLn (c:s)
Diese Form erinnert stark an ein imperatives Programm und erleichtert das Verständnis des Inhalts.
Syntaktisches Salz
Das Gegenstück zum syntaktischen Zucker ist das syntaktische Salz – eine Spracheigenschaft, die das Schreiben von schlechten oder schlecht lesbaren Codes erschwert, ohne dabei die Funktionalität zu erweitern.[5]
Einzelnachweise
- ↑ RWTH Aarchen: syntactic sugar. Abgerufen am 9. Oktober 2018. (en)
- ↑ 2,0 2,1 2,2 Type-sound Syntactic Language Extension. Abgerufen am 9. Oktober 2018. (en)
- ↑ Edsger W. Dijkstra weist in seinem Tripreport darauf hin, dass der Begriff auf Peter Landin zurückzuführen ist, und der Begriff wird bereits im Report 1965 des Departments of Computer Science der University of Illinois verwendet.
- ↑ Syntaktischer Zucker in C: Arrays. 2013-11-28. Abgerufen am 9. Oktober 2018.
- ↑ RWTH Aarchen: syntactic salt. Abgerufen am 9. Oktober 2018. (en)