欢迎您来到懒之才-站长的分享平台!   学会偷懒,并懒出境界是提高工作效率最有效的方法!
首页 > 教程文档 > 其他教程 > [图灵程序设计丛书].两周自制脚本语言[PDF][25.13MB]

[图灵程序设计丛书].两周自制脚本语言[PDF][25.13MB]

2019-04-13 509 收藏 0 赞一个 0 真差劲 0 去评论 去下载

内容简介

《两周自制脚本语言》是一本优秀的编译原理入门读物。全书穿插了大量轻松风趣的对话,读者可以随书中的人物一起从最简单的语言解释器开始,逐步添加新功能,最终完成一个支持函数、数组、对象等高级功能的语言编译器。《两周自制脚本语言》与众不同的实现方式不仅大幅简化了语言处理器的复杂度,还有助于拓展读者的视野。
  《两周自制脚本语言》适合对编译原理及语言处理器设计有兴趣的读者以及正在学习相关课程的大中专院校学生。同时,已经学习过相关知识,有一定经验的开发者,也一定能从本书新颖的实现方式中受益良多。

目录

第1部分 基础篇
第1天 来,我们一起做些什么吧 
1.1 机器语言与汇编语言 
1.2 解释器与编译器 
1.3 开发语言处理器 
1.4 语言处理器的结构与本书的框架 
第2天 设计程序设计语言 
2.1 麻雀虽小、五脏俱全的程序设计语言 
2.2 句尾的分号 
2.3 含糊不得的语言 
第3天 分割单词 
3.1 Token对象 
3.2 通过正则表达式定义单词 
3.3 借助java.util.regex设计词法分析器 
3.4 词法分析器试运行 
第4天 用于表示程序的对象 
4.1 抽象语法树的定义 
4.2 设计节点类 
4.3 BNF 
4.4 语法分析与抽象语法树 
第5天 设计语法分析器 
5.1 Stone语言的语法 
5.2 使用解析器与组合子 
5.3 由语法分析器生成的抽象语法树 
5.4 测试语法分析器 
第6天 通过解释器执行程序 
6.1 eval方法与环境对象 
6.2 各种类型的eval方法 
6.3 关于GluonJ 
6.4 执行程序 
第7天 添加函数功能 
7.1 扩充语法规则 
7.2 作用域与生存周期 
7.3 执行函数 
7.4 计算斐波那契数 
7.5 为闭包提供支持 
7.6 实现闭包 
第8天 关联Java语言 
8.1 原生函数 
8.2 编写使用原生函数的程序 
第9天 设计面向对象语言 
9.1 设计用于操作类与对象的语法 
9.2 实现类所需的语法规则 
9.3 实现eval方法 
9.4 通过闭包表示对象 
9.5 运行包含类的程序 
第10天 无法割舍的数组 
10.1 扩展语法分析器 
10.2 仅通过修改器来实现数组 
第2部分 性能优化篇
第11天 优化变量读写性能 
11.1 通过简单数组来实现环境 
11.2 用于记录全局变量的环境 
11.3 事先确定变量值的存放位置 
11.4 修正eval方法并最终完成性能优化 
第12天 优化对象操作性能 
12.1 减少内存占用 
12.2 能否通过事先查找变量的保存位置来优化性能 
12.3 定义lookup方法 
12.4 整合所有修改并执行 
12.5 内联缓存 
第13天 设计中间代码解释器 
13.1 中间代码与机器语言 
13.2 Stone虚拟机 
13.3 通过栈实现环境 
13.4 寄存器的使用 
13.5 引用变量的值 
13.6 if语句与while语句 
13.7 函数的定义与调用 
13.8 转换为虚拟机器语言 
13.9 通过虚拟机执行 
第14天 为Stone语言添加静态类型支持以优化性能 
14.1 指定变量类型 
14.2 通过数据类型检查发现错误 
14.3 运行程序时执行类型检查 
14.4 对类型省略的变量进行类型推论 
14.5 Java二进制代码转换 
14.6 综合所有修改再次运行程序 
第3部分 解说篇(自习时间)
第15天 手工设计词法分析器 
15.1 修改自动机 
15.2 自动机程序 
15.3 正则表达式的极限 
第16天 语法分析方式 
16.1 正则表达式与BNF 
16.2 语法分析算法 
16.3 LL语法分析 
16.4 算符优先分析法与自底向上语法分析 
第17天 Parser库的内部结构 
17.1 组合子分析 
17.2 解析器组合子的内部 
第18天 GluonJ的使用方法 
18.1 设定类路径 
18.2 启动设定 
18.3 GluonJ语言 
18.4 功能总结 
第19天 抽象语法树与设计模式 
19.1 理想的设计 
19.2 Interpreter模式 
19.3 Visitor模式 
19.4 使用反射 
19.5 面向切面语言

文档截图

QQ截图20190413111418.jpg

[图灵程序设计丛书].两周自制脚本语言[PDF][25.13MB]

一、推荐使用迅雷或快车等多线程下载软件下载本站资源。

二、未登录会员无法下载,登录后可获得更多便利功能,若未注册,请先注册。

三、如果服务器暂不能下载请稍后重试!总是不能下载,请点我报错 ,谢谢合作!

四、本站大部分资源是网上搜集或私下交流学习之用,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任.如果您发现本站有部分资源侵害了您的权益,请速与我们联系,我们将尽快处理.

五、如有其他问题,请加网站设计交流群(点击这里查看交流群 )进行交流。

六、如需转载本站资源,请注明转载来自并附带链接

七、本站部分资源为加密压缩文件,统一解压密码为:www.aizhanzhe.com

下载地址
大家评论