【发布时间】:2013-05-30 00:12:27
【问题描述】:
我正在开发一个快乐的数学表达式和变量解析器。问题是我不知道如何保存变量的值并在以后使用它。有什么想法吗?
这是我识别表达式和变量赋值的方式:
genExp : exp { $1 }
| variable '=' exp { //here I want to save the value of the variable; something like this: insert variables $1 $3, where 'variables' is a Data.Map }
一个表达式可以包含一个变量。例如:
a = 2 + 1
a + 2 (now the parser must print 5)
我需要在解析器解析行'a = 2 + 1'时保存变量'a'的值,并在解析器解析行'a +时获取变量'a'的值2'
【问题讨论】:
-
呃,这个问题不是很清楚。你能改写一下吗?代码示例和您尝试解决的实际问题也会很棒。谢谢。
-
我编辑了我的问题。
标签: parsing haskell functional-programming happy