Improve errors
This commit is contained in:
26
main.py
26
main.py
@@ -2,16 +2,22 @@ from Tokenizer import tokenize
|
||||
from Parser import parse
|
||||
from Evaluator import evaluate
|
||||
from Environment import createEnvironment
|
||||
from Error import SyntaxException, RuntimeException
|
||||
import sys
|
||||
|
||||
if __name__ == "__main__":
|
||||
with open(sys.argv[1], 'r') as source:
|
||||
lines = [line.rstrip('\n') for line in source.readlines()]
|
||||
|
||||
env = createEnvironment()
|
||||
|
||||
tokens = tokenize(lines)
|
||||
|
||||
ast = parse(tokens)
|
||||
|
||||
evaluate(ast, env)
|
||||
try:
|
||||
with open(sys.argv[1], 'r') as source:
|
||||
lines = [line.rstrip('\n') for line in source.readlines()]
|
||||
|
||||
env = createEnvironment()
|
||||
|
||||
tokens = tokenize(lines)
|
||||
|
||||
ast = parse(tokens)
|
||||
|
||||
evaluate(ast, env)
|
||||
except SyntaxException as e:
|
||||
print(e.msg)
|
||||
except RuntimeException as e:
|
||||
print(e.msg)
|
||||
|
||||
Reference in New Issue
Block a user