Token (Compilerbau)
aus Wikipedia, der freien Enzyklopädie
Ein Token (Art.: „das“; Pl.: „Tokens“) ist ein Stück Text, dem von einer Grammatik eine Bedeutung zugewiesen wird. Dabei ist ein Token die lexikalische Grundeinheit, die ein Parser bearbeitet. Beim Parsen wird jedes Token letztlich mit einem Terminalsymbol der Grammatik verglichen. Wenn das Terminalsymbol zu dem Token passt, kann die entsprechende Regel der Grammatik angewendet werden.
Im einfachsten Fall sind Tokens die Zeichen der ursprünglichen Eingabe: der Buchstabe A erzeugt ein A-Token, usw. Für das Parsen komplexerer Sprachen empfiehlt es sich aber, die Eingabe in einer Zwischenstufe als Kette von komplexeren Token zu betrachten. Dazu fasst ein vorgeschalteter Lexer die Zeichen der Eingabe zu handlichen "Häppchen", eben den komplexeren Token, zusammen. Dabei wird jedem Token ein "Typ" zugewiesen, der dann mit den Terminalsymbolen der Grammatik verglichen werden kann. Zum Beispiel könnte "123" (Folge von mehreren Zeichen) zu dem Token "Zahl:123" (ein einzelnes Token) werden, "foobar" zu "id:foobar" und "begin" zu "keyword:begin".