]> ruin.nu Git - proglang.git/blobdiff - syntax.cf
Removed assignments as variables
[proglang.git] / syntax.cf
index 7e4740eaed3a448c6a2f8c3f7bc6dea7721c95ed..bb046b882d380e6977c735c448a617e77843d01c 100644 (file)
--- a/syntax.cf
+++ b/syntax.cf
@@ -4,8 +4,8 @@
 BTrue. BoolT ::= "true" ;
 BFalse. BoolT ::= "false" ;
 
-SDecl.    Stm      ::= Typ Var ";" ;
---SAss.     Stm      ::= Ident "=" Exp  ";"  ;
+SDecl.    Stm      ::= Typ Ident ";" ;
+SDeclAss. Stm      ::= Typ Ident "=" Exp ";" ;
 SExp.     Stm      ::= Exp ";" ;
 SBlock.   Stm      ::= "{" [Stm] "}" ;
 SIf.      Stm      ::= "if" "(" Exp ")" Stm ;
@@ -14,8 +14,8 @@ SWhile.   Stm      ::= "while" "(" Exp ")" Stm ;
 -- SFor.     Stm      ::= "for" "(" Stm Exp ";" Exp ")" Stm ;
 SPrint.   Stm      ::= "print" Exp ";" ;
 
-VVar.     Var      ::= Ident ;
-VAss.     Var      ::= Ident "=" Exp;
+-- VVar.     Var      ::= Ident ;
+-- VAss.     Var      ::= Ident "=" Exp;
 
 ELt.      Exp     ::= Exp1 "<" Exp1 ;
 EELt.     Exp     ::= Exp1 "<=" Exp1 ;
@@ -29,7 +29,8 @@ ETimes.   Exp2    ::= Exp2 "*" Exp3 ;
 EDiv.     Exp2    ::= Exp2 "/" Exp3 ;
 EIncr.    Exp3    ::= Ident "++" ;
 EDecr.    Exp3    ::= Ident "--" ;
-EVar.     Exp3    ::= Var ;
+EVar.     Exp3    ::= Ident ;
+EAss.     Exp3    ::= Ident "=" Exp;
 EInt.     Exp3    ::= Integer ;
 ENeg.     Exp3    ::= "-" Exp3 ;
 EBool.    Exp3    ::= BoolT ;