diff options
| author | Charles <sircharlesaze@gmail.com> | 2020-06-03 22:57:10 +0200 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2020-06-03 22:57:10 +0200 |
| commit | 2b0b62b44a87536597050c525322c7bcc745bdb2 (patch) | |
| tree | 56ee143d427c66cb1f0583c07beec5f181abc983 /src/parser/Statement.hs | |
| parent | 5e7d3a5ff586ac75b768a9a1c1f2d5b80960e821 (diff) | |
| download | computorv2-2b0b62b44a87536597050c525322c7bcc745bdb2.tar.gz computorv2-2b0b62b44a87536597050c525322c7bcc745bdb2.tar.bz2 computorv2-2b0b62b44a87536597050c525322c7bcc745bdb2.zip | |
Added polynom solver from computorv1, Added matrix multipilcation
Diffstat (limited to 'src/parser/Statement.hs')
| -rw-r--r-- | src/parser/Statement.hs | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/parser/Statement.hs b/src/parser/Statement.hs index ca16eca..889f24f 100644 --- a/src/parser/Statement.hs +++ b/src/parser/Statement.hs @@ -9,19 +9,22 @@ import Parser.Expr data Statement = Evaluation Expr + | PolynomEvaluation Expr Expr | VariableDeclaration String Expr | FunctionDeclaration String String Expr statementP :: Parser Statement -statementP = functionDeclarationP <|> variableDeclarationP <|> evaluationP +statementP = functionDeclarationP <|> variableDeclarationP <|> polynomEvaluationP <|> evaluationP where functionDeclarationP = FunctionDeclaration - <$> alphaStringP - <*> parenthesis alphaStringP + <$> labelP + <*> parenthesis labelP <*> (char '=' *> exprP) variableDeclarationP = VariableDeclaration - <$> alphaStringP + <$> labelP <*> (char '=' *> exprP) + polynomEvaluationP = PolynomEvaluation <$> exprP <*> (char '=' *> exprP <* char '?') + evaluationP = Evaluation <$> exprP <* char '=' <* char '?' |
