我一直在玩plugins package提供的"eval"功能 . 它非常适合评估单个函数 .
我想知道,有没有办法输入整个模块,并评估该模块的值(但允许值引用模块中的其他内容)
例如,现在我正在做类似的事情
x :: Int
where
y = 2
z = 3
x = y+z
我想做点什么
module Foo where
import Bar
x :: Int
x = y+z
y = 2 :: Int
z = 3 :: Int
然后我在字符串上使用"eval"然后以某种方式得到 x
.
我可以使用plugins.load函数,但我真的希望能够从字符串中评估directoy,而不必从对象或临时文件加载 .