cch123 / blog_comment

comments of xargin.com
8 stars 0 forks source link

golang 和 ast #70

Open cch123 opened 6 years ago

cch123 commented 6 years ago

http://xargin.com/ast/

hl174 commented 4 years ago

有针对ast进行复杂表达式计算的例子么

cch123 commented 4 years ago

@hl174 ,ast 都帮你把优先级处理好了,直接深度优先遍历就行了

hl174 commented 4 years ago

@cch123 @hl174 ,ast 都帮你把优先级处理好了,直接深度优先遍历就行了

嗯嗯,我再看看,刚接触这个,不知道执行效率怎么样;go/parser都处理好了基本token和优先级是吧

cch123 commented 4 years ago

@hl174 ,嗯,只要 parse 成功就可以遍历了

hl174 commented 4 years ago

@cch123 @hl174 ,嗯,只要 parse 成功就可以遍历了 对ast的遍历和表达式的计算判断,都是需要自己实现的吧;go/parser里面好像还没提供接口直接传入string的表达式得到结果的吧

cch123 commented 4 years ago

@hl174 是的哦,要自己算的

hl174 commented 4 years ago

@cch123 @hl174 是的哦,要自己算的

要完备的计算这一整套,还要做相应的语法检查,边边脚脚的东西还是挺多的

cch123 commented 4 years ago

@hl174 ,那肯定

hl174 commented 4 years ago

@cch123 @hl174 ,那肯定

我尝试了下简单的a+b,解析表达式的抽象树,感觉运行速度有点慢;不知道是本身go/parser的原因还是我的代码原因

cch123 commented 4 years ago

@hl174 ,用 benchmark 来测吧,估算不准