2009-08-19 7 views

Antwort

15

Lex sollte in Zusammenarbeit mit Yacc verwendet werden. Die Geschichte und Details davon sind in Steven Johnsons Papier Yacc: Yet Another Compiler Compiler ausführlich beschrieben. Der Yacc-Parser verwendet nur Namen, die in "yy" beginnen - es gibt keine offensichtliche Bedeutung, die über den Wunsch nach einem Namespace hinausgeht. Das "yy" in lex.yy.c zeigt an, dass die lex-Ausgabe für einen yacc-Parser gedacht ist.

1

Ich glaube, das "yy" wird verwendet, um anzuzeigen, dass dies eine generierte Codedatei ist.

Üblicherweise wird das lex Dienstprogramm schreibt das Programm in die Datei lex.yy.c erzeugt - Reference

0

Ich denke, es von Yacc kommt, eine der älteren Parser-Generatoren.

0

Wahrscheinlich von YACC (Yet Another Compiler Compiler), die mit Lex verwendet wurde, um einige Compiler und ähnliche Programme zu implementieren. Die Gnu-Entsprechungen sind Bison und Flex und sehen jetzt viel verbreiteter aus, so dass die Verbindung nicht offensichtlich ist.