java
chlang 初版
关于chlang 这是个玩具解释器,通过完成它学习了许多关于编译器前端的知识点 github地址 本来这是个c语言项目,由于c语言实现实在过于繁琐,遂弃坑转为java,采用maven的项目管理结构 本语言主要参考了《自制编程语言》、c4的源代码 本文更新于2017.06.21 词法分析 词法分析器所在代码 主要有三个java文件构成,不讲一些自动机相关知识,默认已知 TOKEN_TYPE.java 1. 主要描述符号类型,带有RW开头的表示Reserved Word,也就是保留关键词 2. 最早期的开发比较简单,并没有 '>=' 这类的关系运算符,不会跟'='冲突产生太多的lookhead,这一部分是之后才加上的 3. 语言中只支持两种基础数据类型,整型(int)和字符串(string),当然为了实现闭包,还有函数这个数据类型,但不在这里体现 TOKEN.java