序章
很久很久都不上CSDN了, 以前的账号找不到了, 最近很多人问关于编译器和新语言的方面的东西, 之前一直忙于开发xlang,
现在总算告一段落,现开博客将开发历程以及相关资料记录, 并提供给需要的朋友们参考.
内容可能会比较长, 我会逐一分篇细说, 力求让编译知识零基础的朋友们看完之后也能够具备开发能力.
该系列博文会从零开始详细介绍一门新语言的诞生, 主要定位为编译型, 虽然为编译型,但是为了实现跨平台, 我会设计一套指令集(寄存器式指令系统),
另外还包括虚拟机的设计, 主要开发语言为C/C++,开发平台为Windows, 开发工具VS系列.
预备知识需要掌握一定的 C/C++ 熟练度 (其他语言如java, C#或许更好).
主要结构:
1. 编译器 - 语言定义 - 文法设计 - 词法分析 - 语义解析 - 编译(中间码生产) - 代码优化与生成 - 资源与符号 2. 虚拟机 -
虚拟CPU指令定义 - 线程结构 - GC(垃圾收集) - 标准库的建立 - 调试 - jit相关
因为考虑到以上两部分互相依赖, 所以是同步进行的.
需要重点说明的是, 编译原理这门学科现在已相当成熟, 有着非常可靠的基础理论, 并且每一个设计都需要可靠的理论为依据, 若没有无懈可击的理论基础,
那无异于沙上筑塔, 非但学不到任何东西, 而且是极其浪费时间的, 最后做出来的东西也是漏洞百出, 没有实用意义.
补充说明: 本博文旨在记录和描述一门新语言的诞生过程, 以描述理论设计思想为主旨, 另外由于xlang现在还有诸多问题需要改善, 所以暂不会开放完整源代码.
热门工具 换一换