检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
机构地区:[1]吉林大学计算机科学与技术学院,长春130012
出 处:《吉林大学学报(信息科学版)》2005年第4期429-435,共7页Journal of Jilin University(Information Science Edition)
摘 要:针对多种典型的编译器构造工具存在对文法有限制、嵌入式语义动作有负面影响,目标语言单一和调试维护困难等一些问题,设计并实现了一种新的编译器构造工具———JLUCC(JilinUniversityCompilerCompil-er)。JLUCC使用Earley分析方法,结合反射、面向对象和设计模式等技术,具有词法分析器、语法分析器、抽象语法树和遍历工具等编译器模块的自动生成功能,可以支持任意上下文无关文法、多遍处理和对目标语言的扩展。其功能强大、使用方便、便于维护和扩展,具有广阔的应用前景。展望了未来编译器构造工具的发展趋势。Some problems of typical Compiler construction tools were pointed out, such as restrictions on grammars, negative efficiencies of embedded semantic actions, limitation of single target language and difficulties of maintenance. In order to solve these problems, a new compiler front-end construction tool -JLUCC (Jilin University Compiler Compiler) has been designed and implemented. JLUCC used Earley algorithm and some technologies involving reflection, object-oriented and design patterns. JLUCC can generate a lexer, a parser, ASTs and tree walkers automatically. JLUCC can support entire class of context-free grammar, multiple-pass and extension of types of target languages. JLUCC is a powerful tool which is easy to use, maintain and extend. At last, this paper looked forward the development tendency of compiler front-end construction tools in the future.
关 键 词:编译器 编译器构造工具 Earley算法 抽象语法树 面向对象
分 类 号:TP311[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.117