![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
自制脚本语言
文章平均质量分 60
nklofy
compiler, vm, code obfuscator
展开
-
自制脚本语言(1) 词法、语法、虚拟机的设计思路
rt原创 2015-06-12 11:00:28 · 2790 阅读 · 0 评论 -
自制脚本语言(11) 类型系统
摘要:介绍了自制语言的类型系统。包含了基本类型、数组、类、接口、泛型等。原创 2016-11-01 16:06:53 · 787 阅读 · 0 评论 -
自制脚本语言(10) 抽象语法树AST与三地址线性IR
摘要:介绍了自制语言YFlang的AST及IR表示原创 2016-04-12 22:33:16 · 2487 阅读 · 0 评论 -
自制脚本语言(2) LR(1) parser generator的设计
摘要:设计一个Parser generator自动生成器,对增广文法G自动生成其LALR(1) parser语法解析器。原创 2015-06-16 10:23:22 · 1851 阅读 · 0 评论 -
自制脚本语言(8) 从LR(1) 到 GLR parser generator
摘要:升级前文的LR(1) parser generator为GLR,为自制脚本语言加入面向对象、泛型模板和函数式编程等语法做好准备。原创 2016-01-11 09:22:27 · 3132 阅读 · 0 评论 -
自制脚本语言(6) 解释器
摘要:在前文提到的编译器的基础上,设计解释器来解释运行脚本语言。原创 2015-12-22 14:58:59 · 5801 阅读 · 0 评论 -
自制脚本语言(5) 自制的编译器——LR(1) parser
摘要:针对自定义的脚本语言,设计LR(1) parser。LR(1) parser利用之前的parser generator生成的action table和grammar表格,生成抽象语法树(AST)作为中间语言(IR)。原创 2015-12-22 10:41:28 · 2708 阅读 · 0 评论 -
自制脚本语言(9) 扩充的语法
摘要:设计扩充了新的语法,除了原来的if/else/while结构和函数,增加了数组、类、接口、继承、泛型。原创 2016-01-21 10:29:31 · 700 阅读 · 0 评论 -
自制脚本语言(7) 脚本语言的完善:字符串、注释
摘要:前面提到的编译器解释器的进一步完善,即加入字符串和注释的处理。原创 2015-12-29 10:27:16 · 774 阅读 · 0 评论 -
自制脚本语言(4) 自动生成的词法分析器
摘要:设计词法分析器。读取文件中的正则表达式及其相匹配的符号,生成由NFA到DFA转移表,最终得到表格驱动的词法分析器。原创 2015-09-28 14:34:48 · 2393 阅读 · 0 评论 -
自制脚本语言(3) LR(1) parser generator的实现
摘要:实现了LR(1)的parser generator,读取记录grammar的txt文件,输出记录action table与goto table的txt文件。源代码在http://download.csdn.net/detail/nklofy/8878579原创 2015-06-18 22:43:34 · 1462 阅读 · 0 评论 -
自制脚本语言(12) 作用域与符号表
摘要:介绍了自制语言的编译器对符号表的处理。YF语言中,符号表的基本结构是hash表。每个AST,附带了3个hash表,变量表,类型表,函数表。例如就是变量表,记录变量的名称和值。类型表记录各种类型,array、class、interface、function、generic。函数表则记录了函数名和函数体、函数类型的对应关系。一个文件有若干class和interface定义,此外的部分是脚原创 2016-11-01 16:49:45 · 1636 阅读 · 0 评论