section "Extensions and Variations of IMP"
theory Procs imports BExp begin
subsection "Procedures and Local Variables"
type_synonym pname = string
datatype
com = SKIP
| Assign vname aexp ("_ ::= _" [1000, 61] 61)
| Seq com com ("_;;/ _" [60, 61] 60)
| If bexp com com ("(IF _/ THEN _/ ELSE _)" [0, 0, 61] 61)
| While bexp com ("(WHILE _/ DO _)" [0, 61] 61)
| Var vname com ("(1{VAR _;/ _})")
| Proc pname com com ("(1{PROC _ = _;/ _})")
| CALL pname
definition "test_com =
{VAR ''x'';
{PROC ''p'' = ''x'' ::= N 1;
{PROC ''q'' = CALL ''p'';
{VAR ''x'';
''x'' ::= N 2;;
{PROC ''p'' = ''x'' ::= N 3;
CALL ''q'';; ''y'' ::= V ''x''}}}}}"
end
¤ Dauer der Verarbeitung: 0.14 Sekunden
(vorverarbeitet)
¤
|
Haftungshinweis
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.
|