Skip to content

Implement CR Shift 3 properly. - #660

Merged
ratmice merged 1 commit into
softdevteam:masterfrom
ltratt:crshift3
Aug 17, 2026
Merged

Implement CR Shift 3 properly.#660
ratmice merged 1 commit into
softdevteam:masterfrom
ltratt:crshift3

Conversation

@ltratt

@ltratt ltratt commented Aug 17, 2026

Copy link
Copy Markdown
Member

The long comment here -- which I suspect was me gradually working things out over several months -- is a slightly incorrect version of CRShift3 from the Don't Panic paper: it doesn't implement the "we can accept a repair if it advances the input but doesn't change the stack". For the new test, the previous code would generate unnecessarily long repairs such as Delete x, Delete a when Delete x is all that's needed.

The long comment here -- which I suspect was me gradually working things
out over several months -- is a slightly incorrect version of CRShift3
from the Don't Panic paper: it doesn't implement the "we can accept a
repair if it advances the input but doesn't change the stack". For the
new test, the previous code would generate unnecessarily long repairs
such as `Delete x, Delete a` when `Delete x` is all that's needed.
@ratmice
ratmice added this pull request to the merge queue Aug 17, 2026
Merged via the queue into softdevteam:master with commit 3a514ff Aug 17, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants