晚上好。
Haskell 致力于构建一个简单的语言解释器的项目,因为他的功能性而被选中。
我的问题如下。我有很多函数(这些函数内部的模式匹配)可以实际计算一些东西。我想在屏幕上为我的所有功能在每个功能应用程序中打印一个参数(上下文类型)。
例子:
booleanExpression (And b1 b2) ctx = b1' and b2'
booleanExpression (Or b1 b2) ctx = b1' or b2'
...
arithmeticExpression (Multiply a1 a2) ctx = a1' * a2'
....
对于那些函数,我想在每次调用函数时打印 ctx 。有没有一种优雅的简单方法来做到这一点?还是我必须用类似的东西封装每个函数
arithmeticExpression (Multiply a1 a2) ctx = printAndExec ctx $ a1' * a2'
谢谢你。