X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=documentation;h=28be8953c583ac46e7fc73b3998982312167a67d;hb=9597d94cbb1b328c27883c8421b1fef3211fb698;hp=cf26d0aafadec73cf148288555cd48e3ee6ea6ef;hpb=5f2040d19e69f864edcc7f2e2d27ea9bd298d26a;p=proglang.git diff --git a/documentation b/documentation index cf26d0a..28be895 100644 --- a/documentation +++ b/documentation @@ -1,7 +1,8 @@ ####### DOCUMENTATIATOIAITAT ION ######## -a simple c-like language with support for if/else-statements, while-loops and the standard arithmetic (+, -, /, *) and comparison expressions (<, >, <=, >=, ==, !=). also, increase/decrease expressions (++, --) are supported. +a simple c-like language with support for if/else-statements, while-loops and the standard arithmetic (+, -, /, *) and comparison expressions (<, >, <=, >=, ==, !=). also, post increase/decrease expressions (++, --) are supported. Assignments are allowed in expressions, but they are only allowed on the right side of arithmetic/comparision operators if they are put inside parenthesis + data types: integers and booleans. @@ -9,3 +10,9 @@ integers and booleans. comments: // and /* */ comments are allowed. +(For compilation to work the Bool type in Abssyntax has to be removed so the internal haskell type is used) + +shift/reduce conflicts: + +if with else: 1 conflict +An if statement before the else could be reduced to an if statement lacking the else, but the correct thing is to shift it onto the stack.