你将学到的
  • 编译原理概论
  • 脚本语言语法
  • 脚本语言语法对应的抽象语法树
  • 语法分析理论
  • 运行时设计
  • 表达式求值
  • 使用自制脚本语言编程
  • 词法分析语法分析流程
  • 抽象语法树理论
  • 词法分析理论
  • 运算符优先级处理
  • Value 的概念
  • 语句解释
课程内容
  共8个章节
lab-classic 实验 1 课程简介以及语言特性设计

知识点: 1.编译原理概论 2.词法分析语法分析流程 3.解释运行流程 4.脚本语言语法

知识点: 1.抽象语法树理论 2.抽象语法树实现 3.脚本语言语法对应的抽象语法树

lab-classic 实验 3 词法分析器

知识点: 1.词法分析理论 2.词法分析实现

lab-classic 实验 4 语法分析器

知识点: 1.语法分析理论 2.语法分析实现 3.运算符优先级处理

lab-classic 实验 5 运行时设计

知识点: 1.运行时设计 2.Value的概念 3.上下文(Context)、环境(Environment)、活动记录(Activiationrecord)

lab-classic 实验 6 表达式求值

知识点: 1.表达式求值

知识点: 1.语句解释 2.解释器实现

lab-classic 实验 8 使用自制脚本语言编程
课程介绍

本训练营使用 C++ 语言自制一个脚本语言。麻雀虽小五脏俱全,它完整支持函数,条件/位/逻辑运算,原生字符串/数组类型等特性。

高扩展性:通过合理的设计使它具有极高扩展性,可通过增量形式轻松实现模式匹配,闭包,等高级特性。

数据类型丰富:原生支持 int,double,char,array,bool,string。内置字符串和数组类型非常适用于快速原型开发等用途。

编译原理实践:实验从理论出发,逐步构建词法分析器,语法分析器,AST,运行时,直至一个完整的脚本语言实现。

实验任务

  • 理解编译原理基础知识。
  • 抽象语法树的实现。
  • 词法分析的实现。
  • 语法分析的实现。
  • 运行时的设计。
  • 表达式求值的实现。
  • 解释器的实现。
  • 使用自制脚本语言编程。

效果演示

  • 杨辉三角

杨辉三角

  • 9x9乘法表

9X9乘法表

适合人群

  • 具备C/C++基础,想要进一步突破瓶颈,提高自身大中型项目经验的开发者。
  • 希望了解编译理论,或已知理论,希望付诸实践/自制脚本语言的开发者。
  • 想了解通用脚本语言是如何工作的朋友。

课程信息

  • 学习周期:课程有效期 2 个月,2 个月后实验文档一直可以看,但无法进行在线实验。高级会员有效期内可一直学习,高级会员到期后课程失效(不能看文档)。
  • 课程价格:当前优惠价格 79 元。
  • 企业团报:可获得更多支持服务,请点击购买咨询
课程教师

racal 共发布过 1 门课程

编程语言爱好者,专注虚拟机,编译器,解释器方向 github : github.com/racaljk/

查看老师的所有课程 >
实验楼楼+
实验楼会员