# Polonius review
## What do we want to accomplish?
* EOY 2024 goal and the milestones along the way
* Resolution to the placeholder question (if possible)
## Goals
* EOY 2023 is we have a location-sensitive prototype that is landed on nightly
* accepts the tests we want (or important ones)
* performance is not important
* don't crash
* EOY 2024 is "stable on nightly"
##
* Rémy's thesis:
* Most code is simple and doesn't require complex borrow checking w/ location sensitivity
* or perhaps even NLL
* evidence: AST borrow check was mostly ok :)
Counterexample (sort of): This is probably fairly common, and was not accepted by AST borrow check, but we don't have to be that dumb
```rust
let p = &foo;
if *p {
foo += 1;
}
```
Question: how much of a performance regression would we accept?
Jack: How "fast" is NLL today? Is it "as fast as it could be"?
lqd: No, there's room to be faster.
QOTD: "Precise and fast" -- said nobody ever. -lqd
## Less precise analyses
* Location insensitive is a max of 3% slower
* Jack: This would be a reasonable floor, we could adopt this as the main solution
* lqd: our benchmark suite is not complete, though
* Amanda: could gather data on the cost of increasingly complex analysis
## Roadmap
* Add Niko's graph to the dev guide for onboarding
* Land PR (location-insensitive analysis behind flag)
* Gather data on how much sensitivity we need
* Prototype location sensitive variant (milestone: EOY 2023)
* Most naive version
* ... (a miracle happens)
* SHIP IT