diff options
| author | tslil <tslil@posteo.de> | 2025-10-20 20:34:04 +0100 |
|---|---|---|
| committer | tslil <tslil@posteo.de> | 2025-10-20 22:23:02 +0100 |
| commit | caf3cbdd94ec8341f3233bb31c04c72f99502ed9 (patch) | |
| tree | 774b8433258338fe57feda77d7691bc4ee4a9b1a /rprt.md | |
| parent | d05f62b20fe5ce0d7fa47f2188197912cf9436f6 (diff) | |
Changed monad, impl. some grouped semantics, not completely satisfied
Diffstat (limited to 'rprt.md')
| -rw-r--r-- | rprt.md | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -138,9 +138,12 @@ The grouping operator `{}` provides transactional semantics: all operations with **Syntax:** `{ op₁ , op₂ , ... , opₙ }` **Semantics:** -- Captures editor state on entry -- All operations execute with the original positions +- All operations compute addresses in the original, unmodified editor state +- Changes are validated before application: they must be "in sequence" (non-overlapping and monotonically ordered on position) +- Successive insertions at the same position are concatenated in order +- Changes are applied atomically after all operations complete - Returns the union of all resulting Selections +- Any validation failure aborts the entire group # 1.7 Composition and Parsing |
