Relax запускает Rust-программы прямо из исходников, минуя rustc и LLVM
Relax: JIT compiler for Rust to reduce build times
Relax — это живой компилятор и JIT-рантайм для Rust, написанный на Rust. Он запускает Cargo-пакет прямо из исходного кода без rustc, LLVM и линкера: проверяет код, компилирует каждую функцию при первом вызове, оптимизирует горячие участки на ходу и встраивает новый код в работающий процесс при сохранении файла. Большая 3D-игра показывает первый кадр за 11 секунд вместо трёх минут сборки, повторный запуск занимает 1,15 с, а 92 теста после сохранения прогоняются за 2,2 с. Вся система — одна библиотека на 438 тыс. строк без зависимостей из crates.io. Оптимизированный код пока медленнее rustc --release.
rustc builds your program, then you run it. Relax runs your program while it builds it.
- faresahmed
Почему-то всегда кто-то где-то заново открывает, что сокращение времени между написанием кода и его выполнением облегчает нам жизнь и в какой-то степени позволяет писать лучшие программы.
Пожалуй, самой ранней и лучшей попыткой была вычислительная модель Lisp. С тех пор эта идея проявлялась снова[1], снова[2] и снова[3] в разных формах.
[1]: Inventing on Principle, Bret Victor: https://www.youtube.com/watch?v=PUv66718DII
[2]: REPL-Driven Development, Stuart Halloway: https://vimeo.com/223309989
[3]: LIVE, Live Programming workshop: https://liveprog.org/
- Sytten
У нас пока был хороший опыт с kache для ускорения сборок в CI и локально
- kennykartman
Я знал, что разработчики makepad были сосредоточены на времени сборки, но не думал, что настолько!