我正在使用wasm bindgen制作一个Rust for the web的图灵完整DSL.我希望能够从网上下载任意WASM代码,然后在我的DSL中使用该文件中的函数.我想的是某种相当于dlopen
的动态链接.
但我不知道如何真正做到这一点.
从阅读WebAssembly docs篇文章中,我得到的印象是,这确实是可能的,但我的知识还不够渊博,无法从这份文件中理解过程的细节.
wasm bindgen参考中有一个chapter,详细介绍了如何使用instantiate WebAssembly modules from inside WebAssembly modules!,但这似乎是通过JavaScript实现的,JavaScript似乎不太理想,而不是WebAssembly文档所描述的.
在js sys中,可以从任意字符串创建JavaScript函数,但这实际上是从JavaScript端调用Function(/* some arbitrary string */)
,这似乎再次次优,而不是WebAssembly文档所描述的.
有没有其他更合适的方法来实现我的目标?