Zum Inhalt springen

PL/0

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 31. Dezember 2008 um 17:28 Uhr durch 77.21.226.156 (Diskussion) (Die Seite zur Compilerimplementierung existiert nicht mehr, ich habe den Link entfernt.). Sie kann sich erheblich von der aktuellen Version unterscheiden.

PL/0 ist eine vereinfachte Programmiersprache. Sie dient als Muster, um im Buch Compilerbau von Niklaus Wirth zu zeigen, wie man einen Compiler herstellt. Die Sprache kann nur mit Zahlenwerten umgehen und ist nicht dazu gedacht, wirklich eingesetzt zu werden. PL/0 ist außerdem eine Untermenge der Programmiersprache PL/I von IBM.


Die Syntaxregeln der Modellsprache in EBNF:

program = block "." .

block = [ "CONST" ident "=" number {"," ident "=" number} ";"]
             [ "VAR" ident {"," ident} ";"]
             { "PROCEDURE" ident ";" block ";" } statement .

statement = [ ident ":=" expression | "CALL" ident | "?" ident | "!" expression |
                     "BEGIN" statement {";" statement } "END" |
                     "IF" condition "THEN" statement |
                     "WHILE" condition "DO" statement ].

condition = "ODD" expression |
                    expression ("="|"#"|"<"|"<="|">"|">=") expression .

expression = [ "+"|"-"] term { ("+"|"-") term}.

term   =     factor {("*"|"/") factor}.

factor = ident | number | "(" expression ")".