Skip to content
Rust Search
← Browse conferences

One Language, Two IDE Engines

RustNL
RustWeek 39:59 637 views

One Language, Two IDE Engines by Lukas Wirth and Vlad Beskrovny. The speakers ran out of time during this talk slot. and recorded the full talk on a livestream here: https://www.youtube.com/watch?v=VbdD1c3owKc What makes an IDE different from a compiler — and why does Rust stretch that distinction to its limits? This talk explores what it means for an IDE to “understand” Rust code, and why features like name resolution, type inference, and powerful macros make that understanding so complex. We

Player unavailable or embedding blocked? Use the YouTube link above.

Other talks by Lukas Wirth

An Incrementally Spicier rust-analyzer

RustNL
RustWeek 37:45 1643 views

David Barsky & Lukas Wirth -- rust-analyzer recently migrated to a new version of its incremental computation library, Salsa. This has yielded both major and minor performance wins in rust-analyzer. In this talk, we’ll discuss the challenges (self-referential interning! a 5x memory usage regression!), benefits (parallel autocomplete, persistent caches, and near-instant crate graph additions/removals) of new Salsa. We’ll also discuss how Salsa works internally and how you can use it in your own projects.

Powerful Macros, Good IDE Support, No Headaches. Choose Two.

EuroRust
25:27 2453 views

Macros are complicated, not only for the developers authoring them but also for the IDEs analyzing them. So how does rust-analyzer, a Rust IDE, actually handle them in a way such that features like completions and usage searching work transparently? In this talk we will explore the mechanism in rust-analyzer that enables these features, the current struggles with it and how both the IDE and library authors can improve the macro IDE experience.