
golang
Z1791588905
这个作者很懒,什么都没留下…
展开
-
从零开始撸个计算器 基于goyacc 实现
本示例主要作为备忘使用。 目前考虑的计算器主要支持四则运算和括号,从实现的角度来说。本示例主要由三个部分组成,词法分析模块、语法分析模块、回归测试模块。 词法分析模块:词法分析模块主要将输入的表达式转化为一个个的 token 转交语法分析模块处理。比如表达式 “1”这个被词法分析解析成一个 “NUMBER” 类型,并将该类型的值 1 存储在 lval.num 中,这个变量...原创 2019-12-05 11:27:40 · 894 阅读 · 0 评论 -
goyacc text/scanner 示例
在编译的原理的世界中,lex and yacc 的 example 很经典。在 python 中,有第三方工具包ply实现了类似于 lex and yacc的工具。跟传统的lex 和yacc 一样,lex 提供 token 供 yacc 进行语法分析(移进–规约),在go语言的世界中,可使用golang 自带的 text/scanner 近似的替代lex(它提供golang语言的词法分析),使用g...原创 2019-11-30 18:03:32 · 579 阅读 · 0 评论