一种实现编程语言相互转换的方法.pdfVIP

  • 37
  • 0
  • 约4.92千字
  • 约 2页
  • 2017-08-10 发布于湖北
  • 举报
一种实现编程语言相互转换的方法.pdf

! : Science and Technology InnovationHerald T 技 术 travelflp可。生成的XML文档结构清晰,在 当旅行者访 问某一结点的时候 ,就要 对其进行处理 的时候可以定义其中的节点 有接受者来 响应相应 的动作。接收者是根 信息,从而为下一步将其转换为其他编程语 据整个程序在运行时来匹配相应 的旅行者 言打下了基础。 的,每个节点的接受方法类似。 图3 下面给出在旅行者 中ASTInitializer 4从XML转换为其他语言 2.1总体分析 类型节点对应的接受方法: 由于该文重点在于将编程语言转换为 (1)定义C语 言语 法 的.JJt文件 ,通过 publicObjectjjtAccept(CParser XML文件,所以在此只对于XML转换为其 JavaCC工具生成C语言对应的抽象语法树 Travellertraveller,0bjectdata){ 他编程语言作简要介绍,有这种需求 的读 和C语言的编译器。(2)添加相应的节点标记 retUrn travel1er.travel(thiS, 者可以按照此思路进行深入研究。 和一定的规范 。(3)通过旅行者模式对其进 data); XML文档转为其他编程语言,是将文档 行遍历和提取所需的信息。 } 按照匹配的XSLT(Extensib1e Stylesheet 此过程所对应的流程图如图1所示 。 (3)创建转换器。 LanguageTransformation,扩展样式表 2.2C语言到AST的实现 至此,已经建立了C语言转为XML文档 转换语言)转化为特定语言。如图3所示。 首先获 得相应语 言 的 .jJt文件 。执 的基础架构,下面还需要一个驱动程序来 行.jjt文件会生成七个文件 。我们对其 中 触发整个程序的运行。下面是部分代码: 5结语 的SimPle1.java进行编译就可以获得 publicstatic void main(string【】 该研究完成了编程语言之 间相互转换 Simple1.JJ所定义的语法的编译器。如果我 args){ 工作的前一部分,就是从某一编程语言到 们对C语言的.Jj文件进行JavaCC操作就可 XML语言的转换。其 中是以C语言为例 ,从 以得 到一个名 为CParser.java的文件 ,对 //解析器开始语法分析 ,生成待 获取.jj文件到最终生成XML文档做了详细 其进行编译就得到了C语言的编译器。 测程序的AST,并获得Tr

文档评论(0)

1亿VIP精品文档

相关文档