~/talk

An Incremental Approach to the Semantics of Borrowing

Talkat HOPE 2024 · on Monday, 2024-09-02· [rust]
links:none on file
links:none on file
name:John Li
links:none on file
links:none on file
links:none on file
slides:none on file

Presents a core, extensible borrow calculus built incrementally: start from a linear call-by-push-value core, add immutable borrows, lifetimes, mutable borrows, and lifetime polymorphism; produce a type system and a domain-specific separation logic for each stage and prove semantic type soundness (semantic model proof is in progress). Claims the calculi terminate and enforce no use-after-free, exclusive-or-immutability aliasing, and no memory leaks; excludes non-lexical lifetimes and does not yet provide a mechanized formalization.

AI-written summary · about

  1. 0:00Borrowing in Rust
  2. 1:25Borrowing prevents memory issues
  3. 3:54Borrowing research challenges
  4. 7:12Borrow Zoo features
  5. 10:26Core borrowing calculus
  6. 12:54Downward-only borrowing
  7. 14:39Extending the type system with lifetimes
  8. 20:01Mutable borrows
  9. 21:44Separation logic for borrowing
  10. 23:51Future directions
  11. 25:42Q&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.