diff options
Diffstat (limited to 'report/esoteric_project_report.tex')
-rw-r--r-- | report/esoteric_project_report.tex | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/report/esoteric_project_report.tex b/report/esoteric_project_report.tex index d4b2b78..3da6800 100644 --- a/report/esoteric_project_report.tex +++ b/report/esoteric_project_report.tex @@ -173,16 +173,28 @@ asdf & $<$expr-Statement$>$ $|$\\ & $<$print-Statement$>$ $|$ \\ & $<$if-Statement$>$ \\ + & $<$do-Statement$>$ \\ + & $<$do-while-Statement$>$ \\ + \hline + $<$block$>$::=& $<$statement$>$* "end"\\ \hline $<$declaration$>$ ::= & "character (len = "$<$number$>$")::"$<$identifier$>$ $|$ \\ & "int::"$<$identifier$>$ \\ & "real::"$<$identifier$>$ \\ \hline - $<$print-Statement$>$ ::= & "print *" (","$<$expression$>$)* "endprint" \\ + $<$print-Statement$>$ ::= & "print *" (","$<$expression$>$)* \\ + \hline + $<$if-Statement$>$ ::= & "if ("$<$expression$>$") then" $<$block$>$ \\ + & ("else" $<$block$>$)?\\ + & if"\\ + \hline + $<$do-Statement$>$ ::= & "do" $<$identifier$>$ "=" $<$number$>$","$<$number$>$(","$<$number$>$)?\\ + &$<$block$>$ \\ + & "do"\\ \hline - $<$if-Statement$>$ ::= & "if ("$<$expression$>$") then" $<$statement$>$* \\ - & ("else" $<$statement$>$*)?\\ - & "endif"\\ + $<$do-while-Statement$>$ ::= & "do while ("$<$expression$>$")"\\ + & $<$block$>$ \\ + & "do"\\ \hline $<$expr-statement$>$ ::= & $<$expression$>$\\ \hline @@ -194,7 +206,7 @@ asdf $<$equality$>$ ::= & $<$comparison$>$"=="$<$comparison$>$$|$\\ & $<$comparison$>$$|$\\ \hline - $<$comparison$>$ ::= & $<$term$>$("$>$"$|$"$<$")$<$term$>$$|$\\ + $<$comparison$>$ ::= & $<$term$>$("$>$"$|$"$<$"$|$"$>=$"$|$"$>=$")$<$term$>$$|$\\ & $<$term$>$$|$\\ \hline $<$term$>$ ::= & $<$factor$>$("+"$|$"-")$<$factor$>$$|$\\ |