main.py (view raw)
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 |
import sys
from intepreter import Interpreter
from lexer import Lexer
from parser import Parser
def main():
print('->', end=' ')
sys.stdout.flush()
for line in sys.stdin:
lexer = Lexer(line)
tokens = lexer.lex()
# for token in tokens:
# print(token)
parser = Parser(tokens)
ast = parser.parse()
# print(ast)
interpreter = Interpreter(ast)
interpreter.run()
print('->', end=' ')
sys.stdout.flush()
if __name__ == '__main__':
main()
|