Som*_*ive 6 computer-science interpreter compilation rust
我刚开始使用 Rust 并想知道:是 Rust 解释器吗?有了解释器,Rust 编译器就不需要在每次调用时都编译所有的源文件,而只会在代码发生变化时进行解释。这就是 JavaScript 和 Python 没有真正的编译时间的原因。
使用 Rust 进行增量编译,但大型项目仍然很慢。对于 Web IMO,使用 Rust 开发 GUI 将是一个福音。
小智 13
您可以使用evcxr。尝试Cargo install evcxr_repl。然后,在新终端中运行evcxr。然后,输入您的 Rust 代码进行评估。恐慌不会导致控制台使整个程序崩溃。简单地说,您会得到一个错误和解释,您可以重新输入最后出错的部分。当我想在我的项目中测试一些小东西时,我发现这很有用,而进行编译会很麻烦。例如,测试路径连接如何工作等。
不,目前还没有 Rust 解释器可以简单地用作 编译的替代品rustc。
有miri一个 MIR 的解释器,Rust“中级中间表示”(基本上定义了一个控制流图)。Rust 编译器生成 MIR 代码作为其常用管道的一部分。接下来,该 MIR 代码通常会被翻译为 LLVM-IR,然后由 LLVM 将其翻译为机器代码。Miri 允许直接解释该 MIR 代码。
然而,Miri 并不是真正为程序员解释他们的项目而不是编译它而构建的。至少现在还没有。相反,它的构建主要是为了检查不安全代码是否存在未定义的行为:动态代码分析工具/清理程序。此外,美里的发展仍然受到很大限制。特别是,我上次检查时,extern "C"不支持通话。
我还想说,Rust 不像其他语言那样适合完全解释。Rust 编译器对源代码执行大量繁重的分析,这些分析必须在某个时刻以某种方式完成。
我认为最接近您希望看到的是Rust 语言服务器。具体来说,IDE 使用它来仅提供更改,以便代码编译速度更快。
您可能还有兴趣观看/参与RLS 2.0 的工作。
就 UI / Web 而言,这是一个不同的蜡球,我还没有太多运气。
| 归档时间: |
|
| 查看次数: |
3059 次 |
| 最近记录: |