~/talk

The first six years in the development of Polonius

Talkat EuroRust 2024 · 2024-10-10..10-11· [rust]
slides:none on file

Polonius aims to extend Rust’s borrow checker to handle conditional early returns (Case 3) by modeling lifetimes as sets and letting the outlives graph vary with control flow. Work begins in 2018 with an Datalog prototype on nightly that proves correctness but fails on memory and speed. The current path removes higher‑kinded logic from borrow checking, ports rules into a Rust/Datafrog engine, and experiments with a flip perspective and a tiered borrow check; a performant, stable prototype is still unfinished.

AI-written summary · about

  1. 0:00Polonius introduction
  2. 1:02Rust and ownership types
  3. 3:49Borrow checker rules
  4. 7:02Lifetime inference evolution
  5. 10:35Edge cases limitations
  6. 12:01Polonius changes
  7. 14:08Polonius history
  8. 15:32Polonius and Datalog
  9. 16:58Datalog challenges
  10. 18:01Incremental integration plan
  11. 19:26Borrow Checker improvement
  12. 20:30Dynamic graphs reasoning
  13. 21:11Higher-kinded types handling
  14. 23:21Borrow checking tiers
  15. 24:01Polonius possibilities
  16. 25:25Summary
~/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.