~/talk

The First Six Years in the Development of Polonius, an Improved Borrow Checker

Talkat IWACO 2024 · on Monday, 2024-10-21· [rust]
slides:none on file

Polonius is an overhaul of Rust’s borrow checker that replaces lifetime points-in-CFG with lifetimes as sets of loans, adds per-program-point dynamic outlives graphs for flow sensitivity, and aims to accept patterns NL lifetimes rejects (notably lending iterators). Early prototypes are written in Datalog (then a homegrown, Datalog-like engine) and run on nightly but are slow and incomplete—authors report up to a 5,000% regression in some cases—so the roadmap is incremental integration, equivalence tests against current NLL, and staged, on-demand analysis.

AI-written summary · about

  1. 0:00Polonius and Rust borrow checker
  2. 2:09Borrow checker reference validity
  3. 5:20Borrow checker precision evolution
  4. 8:13Polonius improves reference mechanics
  5. 12:29Six years of Polonius history
  6. 15:42Polonius in Datalog and Rust
  7. 18:08Integrating Polonius progress
  8. 22:30Gradual adoption strategy
  9. 24:15Future of reference tracking
  10. 27:04Lifetime semantics compatibility
  11. 30:58Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.