Syntax, Semantik und EBNF


Die Syntax einer Programmiersprache bescheibt die Menge der erlaubten Zeichenketten für Programme. Die Syntax fast aller Sprachen wird heute unter Verwendung kontextfreier Grammatiken angegeben. Als formales Beschreibungsmittel werden die Backus-Naur-Form (BNF) und die erweiterte Backus-Naur-Form (EBNF) und Syntaxdiagramme benutzt.

Die Semantik einer Programmiersprache definiert die Bedeutung der einzelnen Sprachkonstrukte. Die Semantik der Sprachkonstrukte wird für die meisten Programmiersprachen heute textuell beschrieben

Erweiterte Backus-Naur-Form (EBNF) zur formalen Beschreibung der Syntax einer Programmiersprache. Eine EBNF enthält folgende Metazeichen:

Metazeichen in EBNF

Bedeutung

<Sprachkonstrukt>

Sprachkonstrukt der Programmiersprache

<l> ::= <r>

Ableitungsregel: Der linke Teil <l> wird durch den rechten Teil <r> definiert.

|

alternative Definition (oder)

{ }

Das in Mengenklammern eingeschlossee Konstrukt kann 0-mal oder mehrfach vorkommen.

[ ]

Das in Intervallklammern eingeschlossene Konstrukt kann 0-mal oder höchstens 1-mal vorkommen.

nach: U. Schneider, D. Werner (Hrsg.): Taschenbuch der Informatik. Fachbuchverlag Leipzig, 2.Aufl., 2000, 297f.