正在自动登录…
← 返回项目列表indexable-inc/
indexable-inc/ ra-jit
ra-jit 是一个实验性的 Rust 热重载工具,利用 rust-analyzer 作为编译器前端,通过 Cranelift JIT 实现毫秒级增量编译和运行中程序的实时编辑。适用于希望快速迭代 Rust 代码的开发者,但当前仅支持 Rust 的一个小子集。
AI 中文解读 · 根据仓库描述与 README 生成 · 2026/10/20 22:02:02 · 查看原文
- 累计 Stars
- 184
- 当前热度
- 未达当前门槛
- 仓库创建时间
选用指南
AI 根据 README 整理 · 2026/10/20 22:02:02
- 使用方式
通过 nix run 或 cargo build 运行,提供命令行界面。
查看 README 依据
# ra-jit Hot-reload Rust in milliseconds, using rust-analyzer as the compiler front end. ``` nix run github:indexable-inc/ra-jit ```  [mp4](docs/demo.mp4) Edit the source on the right and the Game of Life on the left changes on the next frame, with its state intact. A toggle switches to a real `cargo build` per edit for comparison. > [!WARNING]
`nix run` builds each crate as its own Nix derivation from cargo's unit graph, so editing ra-jit doesn't rebuild rust-analyzer or Cranelift. After changing `Cargo.toml` or `Cargo.lock`, regenerate the graph with `python3 tools/unit_graph.py`. Without nix: nightly-2026-07-15 with `rust-src`, then `cargo build --release && ./target/release/ra-jit life`. ## Thanks [rust-analyzer](https://github.com/rust-lang/rust-analyzer) does the hard part (parsing, types, traits, layouts, MIR). [Cranelift](https://cranelift.dev/) generates the code. [egui](https://github.com/emilk/egui) draws the window.
- 部署要求
需要 Nix 或 Rust nightly-2026-07-15 及 rust-src。
查看 README 依据
`nix run` builds each crate as its own Nix derivation from cargo's unit graph, so editing ra-jit doesn't rebuild rust-analyzer or Cranelift. After changing `Cargo.toml` or `Cargo.lock`, regenerate the graph with `python3 tools/unit_graph.py`. Without nix: nightly-2026-07-15 with `rust-src`, then `cargo build --release && ./target/release/ra-jit life`. ## Thanks [rust-analyzer](https://github.com/rust-lang/rust-analyzer) does the hard part (parsing, types, traits, layouts, MIR). [Cranelift](https://cranelift.dev/) generates the code. [egui](https://github.com/emilk/egui) draws the window.
- 已知限制
仅支持 rust-analyzer 能降低到 MIR 且 ra-jit 能翻译的 Rust 子集,不支持 dyn、闭包、堆、std/fmt、drop、unwinding 等,且无溢出和边界检查。
查看 README 依据
> **This is an experiment.** It only runs what rust-analyzer can lower to MIR and what ra-jit can translate. Today that is a small subset of Rust: no `dyn`, closures, heap, `std`/`fmt`, drops, unwinding or real `i128`, and no overflow or bounds checks. rust-analyzer has only partial borrow checking, so code rustc rejects may still run here. Keep running `cargo check`; rustc + LLVM stay the compiler for release builds and CI. > [!NOTE]
README
正在加载 README…
收录信息
- 仓库创建时间
- 2026/10/20 07:31:09
- 首次达标收录
- 2026/10/20 17:57:03
- 统计更新时间
- 2026/10/22 19:01:00
按创建时长与累计 Stars 判断等级。首次达标收录后,即使未达当前门槛仍保留;累计 Stars 和仓库状态会定期更新。确认只有 README 及辅助文件的仓库会停止公开。
模型评估
普通加权总分 3.2 / 5
由 Jev 模型根据仓库描述与 README 评估,2026/10/20 17:57:03 生成。评分仅供参考,不是代码、安全或许可证审查;热度等级另按创建时长与累计 Stars 计算。
仓库信息
- 最近推送
- 2026/10/22 18:18:43
- 许可证标识
- Apache-2.0
- Fork 数
- 7
- 当前状态
- 未归档
收录记录
按创建时长与累计 Stars 首次收录:小火
首次发现项目