Enable importing other source files

This commit is contained in:
Bartłomiej Pluta
2019-07-08 22:32:59 +02:00
parent 38df0bf8df
commit d4b4aa48ee
7 changed files with 59 additions and 16 deletions

View File

@@ -1,28 +1,15 @@
import sys
from smnp.ast.parser import parse
from smnp.environment.factory import createEnvironment
from smnp.error.base import SmnpException
from smnp.runtime.evaluator import evaluate
from smnp.token.tokenizer import tokenize
from smnp.program.interpreter import Interpreter
def main():
try:
with open(sys.argv[1], 'r') as source:
lines = [line.rstrip('\n') for line in source.readlines()]
tokens = tokenize(lines)
ast = parse(tokens)
ast.print()
env = createEnvironment()
evaluate(ast, env)
Interpreter.interpretFile(sys.argv[1])
except SmnpException as e:
print(e.message())
except KeyboardInterrupt:
print("Program interrupted")