/** * Vladimir Vacic, Betul Buyukkurt * Computer Science and Engineering Department * University of California, Riverside * * CS152 - Compiler Construction */ import java_cup.runtime.*; import java.io.FileReader; import syntaxtree.*; import visitor.*; public class Main { public static void main(String[] args) { try { Parser parser = new Parser(new Lexer(new FileReader(args[0]))); Program program = (Program)parser.parse().value; BuildSymbolTableVisitor sTabVisitor = new BuildSymbolTableVisitor(); program.accept(sTabVisitor); program.accept(new TypeCheckVisitor(sTabVisitor.getSymbolTable())); program.accept(new InterpreterVisitor(sTabVisitor.getSymbolTable())); } catch(Exception e) { } } }