哇哈哈哈,Tang脚本语言初步成果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了哇哈哈哈,Tang脚本语言初步成果相关的知识,希望对你有一定的参考价值。

技术分享


额,现在已经有了while语句,支持四则运算,比较运算,赋值表达式,所有变量都是double浮点数类型,在运行完程序后自动将所有变量的值显示出来。


目前语法树是这样的:

技术分享


当然用了访问者模式,每个继承IVisitor的类都能有自己的功能,比如求值啊,格式化代码(将语法树转换成代码),求导啊(只对表达式有用)。我觉得这种模式真的方便地不得了。


再贴一下运行的代码吧:

技术分享


这里是求带一个封号的表达式,带大括号的语句块,while语句块的执行过程。前面两个都好办,直接执行就行了。后面的while语句的condition由于Visit的返回值只能是void,所以建了一个mLastResult变量,用来保存每次返回的值。然后每次执行body判断一下喽。


功能还在加。







以上是关于哇哈哈哈,Tang脚本语言初步成果的主要内容,如果未能解决你的问题,请参考以下文章

框架、编程语言和脚本语言是啥意思?

shell脚本初步认识

初步shell脚本编程

shell编程脚本初步

R语言编程艺术学习

php初步