public string VisitProgram(PascalProgramNode program)
        {
            var zero = new ScopedSymbolTable(program.ProgramName);

            PascalSemanticAnalyzer.DefineBuiltIns(zero);
            CurrentScope = zero;
            var programStr = VisitProgramBlockNode(program);

            return(programStr);
        }