我目前正在使用PolyML 5.5.2,并尝试创建一个运行时编译器函数,它接受一个字符串并运行它。
所需的功能应该是
有趣的评估字符串 - >单元
输入时
> eval" val a = 1;&#34 ;;
val a = 1:int
我做过一些研究,在旧版本中有一个像PolyML.compilerEx这样的函数,但似乎在PolyML 5.5.2中没有这样的东西。
非常感谢所有人。
答案 0 :(得分:1)
您可以使用PolyML.compiler。该文档更接近即将发布的5.6版本,但它应该可以与5.5.2一起使用。
答案 1 :(得分:1)
你会想要一些
的内容PolyML.compiler(infn,
[PolyML.Compiler.CPErrorMessageProc record_error,
PolyML.Compiler.CPOutStream obufPush]) ()
其中infn
是赋予编译器字符的函数,obufPush
是消耗编译器输出的函数。 record_error
在代码I中定义为采样自:
fun record_error {message,...} = PolyML.prettyPrint(obufPush,70) message