首页 新闻 会员 周边 捐助

如何自己编写一个简单解释器?

0
悬赏园豆:100 [已关闭问题] 关闭于 2015-07-01 14:30

举例如下:

用户收入一串字符串a = fun1(int a, int b) + fun2(fun3(int x,int y),z)

fun1,fun2,fun3都是系统定义好的函数,如何实现解释?

各位大神有没有好的想法,不吝赐教,小弟感激不尽!

高山小路的主页 高山小路 | 初学一级 | 园豆:107
提问于:2015-04-28 20:26
< >
分享
所有回答(3)
0

可以考虑用CodeDom动态构建代码,来跑结果。

表示解释器,好高大上的样子。

幻天芒 | 园豆:37207 (高人七级) | 2015-04-29 08:55
0

无论写解释器还是编译器,都要先定义好语法。

然后遵循语法使用一些范式进行解析,识别中间的符号,然后再执行。

市面上有源代码,就是简单的表达式解析与识别的。

519740105 | 园豆:5810 (大侠五级) | 2015-04-29 09:36
0

解释器简单?

听说竞选美国总统也挺简单的,当然你掌握了就简单。

或者说,简单的解释器就很简单,你定义一些暴力规则,凡是不符合规则的全部当成错的,

或者你直接提供一个生成器,让用户选无可选。

 

如果你要的是解释器的那种解释器,那你准备个把月慢慢查资料,慢慢DEBUG吧。

爱编程的大叔 | 园豆:30844 (高人七级) | 2015-04-29 10:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册