用rust写一个玩具解释器1

1.开发环境搭建

1. 安装rust-自行百度
2. 代码编辑器
	我用的是vscode+RLS+TabNine

2.语言的定义

暂时实现的

let x =10;
let x1 = 10+10;
let x2 = x1-10;
let x3 = x2*10;
let x4 = x3/10;
let t = true;
let f = false;
let bang = !f;
let minus = -x4;
let y = fn(x){x;};
let z = fn(x){return x;};
if (x){
	
}else{

}

看起来很简单
所以说是玩具解释器, 当然实现的时候就发现自己眼高手低
其实原文(第一篇有下载链接)中还有数组,哈希表… 到时候按附加功能实现好了

原文定义的

用rust写一个玩具解释器1_第1张图片用rust写一个玩具解释器1_第2张图片

3. 行文章节

  • the lexer - 词法分析
  • the parser - 语法分析
  • the AST - 抽象语法树
  • the internal object system - 对象系统
  • the evaluator - 核心部分, 获取返回值

4. 关于语言的定义

感兴趣的读者,可以自行学习形式语言与自动机理论, 然后发现正则表达式也没有那么难了.

你可能感兴趣的:(rust,rust,爬虫,算法,自然语言处理)