From 887402efda7584835b1c6242bcde2a2f6059e565 Mon Sep 17 00:00:00 2001 From: mryouse Date: Thu, 19 May 2022 03:24:44 +0000 Subject: interpreter with some builtins --- neb.py | 42 ++++-------------------------------------- 1 file changed, 4 insertions(+), 38 deletions(-) (limited to 'neb.py') diff --git a/neb.py b/neb.py index 5e46049..ad645a5 100644 --- a/neb.py +++ b/neb.py @@ -1,7 +1,6 @@ from lexer import lex from parser import parse -from runner import evaluate -from std import _get_debug +from interpreter import interpret import sys @@ -15,44 +14,11 @@ def main(): data = fil.read() try: - lexed = lex(data, []) - ''' - if _get_debug(): - acc = " ".join([f"{l}" for l in lexed]) - print(f" - LEX: {acc}") - ''' - parsed = parse(lexed, []) - ''' - if _get_debug(): - acc = " ".join([f"{p}" for p in parsed]) - print(f" - PARSE: {acc}") - ''' - ev = evaluate(parsed, []) + lexed = lex(data) + parsed = parse(lexed) + ev = interpret(parsed) except Exception as e: print(f"panic! {e}") - ''' - print("### neb :)(:") - print("version: < 0") - idx = 1 - while True: - inp = input(f"#{idx}> ") - if len(inp.strip()) == 0: - continue - try: - lexed = lex(inp, []) - if _get_debug(): - acc = " ".join([f"{l}" for l in lexed]) - print(f" - LEX: {acc}") - parsed = parse(lexed, []) - if _get_debug(): - acc = " ".join([f"{p}" for p in parsed]) - print(f" - PARSE: {acc}") - ev = evaluate(parsed, []) - print(f"=> {ev}") - idx += 1 - except Exception as e: - print(f"panic! {e}") - ''' if __name__ == "__main__": -- cgit v1.2.3