Coding in haskell, parser, interpreter, scanner and type checker
module JavaishParser where import JavaishScanner data Operator = Plus | Minus | Times | Divide | OGt | OLt | OEq | ONe deriving ( Eq, Show ) data Type = TInt | TBool deriving ( Show, Eq ) data Expression = ExpInt Integer | ExpBool Bool | ExpBin Expression Operator Expression | ExpBang Expression deriving Show parseC :: [ TokenPos ] -> ( Expression, [ TokenPos, Integer ] ) parseC tokens = uncurry parseC2 $ parseE tokens
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 1 | 2 | 3 | 4 | 5 |