自制编程语言 PDF 高清电子书 免费下载 完整版 在线阅读- 高飞网
现在已经01点55分了,请注意休息
自制编程语言

自制编程语言

前桥和弥
图灵
浏览人数:35
读者:                           ...
  《图灵程序设计丛书:自制编程语言》手把手地教读者用C语言制作两种编程语言:crowbar与Diksam。crowbar是运行分析树的无类型语言,Diksam是运行字节码的静态类型语言。这两种语言都具备四则运算、变量、条件分支、循环、函数定义、垃圾回收等功能,最终版则可以支持面向对象、异常处理等高级机制。所有源代码都提供下载,读者可以一边对照书中的说明一边调试源代码。这个过程对理解程序的运行机制十分有帮助。

第1章 引子   
1.1 为什么要制作编程语言   
1.2 自制编程语言并不是很难   
1.3 本书的构成与面向读者   
1.4 用什么语言来制作   
1.5 要制作怎样的语言   
补充知识 “用户”指的是谁?   
补充知识 解释器并不会进行翻译   
1.6 环境搭建   
补充知识 关于bison与flex的安装   
第2章 试做一个计算器   
2.1 yacc/lex是什么   
补充知识 词法分析器与解析器是各自独立的   
2.2 试做一个计算器   
2.3 不借助工具编写计算器   
补充知识 保留字(关键字)   
补充知识 避免重复包含   
补充知识 预读记号的处理   
2.4 少许理论知识--LL(1)与LALR(1)   
补充知识 Pascal/C 中的语法处理诀窍   
2.5 习题:扩展计算器   
第3章 制作无类型语言crowbar   
3.1 制作crowbar ver.0.1语言的基础部分   
补充知识 初次赋值兼做变量声明的理由   
补充说明 各种语言的全局变量处理   
补充知识 elif、elsif、elseif的选择   
3.2 预先准备   
补充知识 valgrind   
补充知识 富翁式编程   
补充知识 符号表与扣留操作   
3.3 crowbar ver.0.1的实现   
补充知识 不完全类型   
补充知识 静态变量的许可范围   
补充知识 关于crowbar中使用的枚举型定义   
第4章 数组和mark-sweep垃圾回收器   
4.1 crowbar ver.0.2   
补充知识 “数组的数组”和多维数组   
4.2 制作mark-sweep GC   
补充知识 引用和immutable   
4.3 实现GC 本身   
补充知识 GC 现存的问题   
补充知识 Coping GC   
4.4 其他修改   
第5章 中文支持和Unicode   
5.1 中文支持策略和基础知识   
补充知识 wchar_t 肯定能表示1 个字符吗?   
5.2 Unicode   
补充知识 Unicode可以固定(字节)长度吗?   
5.3 crowbar book_ver.0.3的实现   
补充知识 失败的 #ifdef   
补充知识 还可以是别的样子--Code Set Independent   
第6章 制作静态类型的语言Diksam   
6.1 制作Diksam Ver 0.1语言的基本部分   
6.2 什么是静态的/ 执行字节码的语言   
6.3 Diksam ver.0.1的实现--编译篇   
补充知识 YARV 的情况   
6.4 Diksam虚拟机   
第7章 为Diksam引入数组   
7.1 Diksam中数组的设计   
补充知识 D 语言的数组   
7.2 修改编译器   
7.3 修改DVM   
补充知识 创建Java 的数组常量   
补充知识 C 语言中数组的初始化   
补充知识 ArrayStoreException   
第8章 将类引入Diksam   
8.1 分割源文件   
补充知识 #include、文件名、行号   
补充知识 动态加载时的编译器   
8.2 设计Diksam中的类   
8.3 关于类的实现--继承和多态   
补充知识 无类型语言中的继承   
8.4 关于类的实现   
补充知识 方法调用、括号和方法指针   
补充知识 对象终结器(finalizer)和析构函数(destructor)   
第9章 应用篇   
9.1 为crowbar引入对象和闭包   
9.2 异常处理机制   
补充知识 Java 和C# 异常处理的不同   
补充知识 catch 的编写方法   
补充知识 受查异常的是与非   
补充知识 异常处理本身的是与非   
9.3 构建脚本   
9.4 为crowbar引入鬼车   
9.5 其他   
附录A crowbar语言的设计   
附录B Diksam语言的设计   
附录C Diksam Virtual Machine 指令集   
编程语言实用化指南--写在最后   
参考文献   
看过本书的人还看过