From: ahmedsamyh Date: Mon, 18 Nov 2024 17:57:11 +0000 (+0500) Subject: WIP: Parser X-Git-Url: https://git.momoyon.org/?a=commitdiff_plain;h=f2a510bc670b5b39534ff2168483cf18dd968041;p=lang.git WIP: Parser --- diff --git a/main.momo b/main.momo index f1e547b..78ff711 100644 --- a/main.momo +++ b/main.momo @@ -1,3 +1 @@ -69.0 -100.15134324 -420.11 +position = initial + rate * 60; diff --git a/main.py b/main.py index 9a342ba..e1cf5f0 100644 --- a/main.py +++ b/main.py @@ -109,7 +109,7 @@ class Token: def __str__(self): return f"Token ({token_type_as_str_map[self.typ]}, '{self.value}', {self.loc})" -class Parser: +class Lexer: def __init__(self, filename: str): try: with open(filename, mode='r') as f: @@ -312,6 +312,10 @@ class Parser: token = self.next_token() return tokens +class Parser: + def __init__(self, tokens): + self.tokens = tokens + def main(): program: str = sys.argv.pop(0) @@ -322,9 +326,12 @@ def main(): filename: str = sys.argv.pop(0) - parser = Parser(filename) + lexer = Lexer(filename) # Lexical Analysis - tokens = parser.lex() + tokens = lexer.lex() + + # TODO: Parse + parser = Parser(tokens) for t in tokens: pprint.pp(str(t))