Program program = parser.parseProgram();
if (Config.DEBUG_SOURCE) {
Writer w = new OutputStreamWriter(System.out);
new RoundtripVisitor(w).visit(program);
w.flush();
}
// handle variable and function declarations
new DeclarationVisitor().visit(program);