<feed xmlns='http://www.w3.org/2005/Atom'>
<title>aup/examples/notes.aup, branch master</title>
<subtitle>Declarative systems language and compiler targeting verified Pure modules.
</subtitle>
<id>http://git.yeowoo.org/aup/atom?h=master</id>
<link rel='self' href='http://git.yeowoo.org/aup/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/'/>
<updated>2026-09-26T10:01:21Z</updated>
<entry>
<title>Declare marks: cursors that stay before inserted text</title>
<updated>2026-09-26T10:01:21Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-26T10:01:21Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=acbd39e3e838fe49b17e32fe254af9ea12b4f81b'/>
<id>urn:sha1:acbd39e3e838fe49b17e32fe254af9ea12b4f81b</id>
<content type='text'>
`state from: mark in note` is a cursor that stays before text inserted
at its position; `cursor in` goes after it, as a caret does. Everything
a cursor takes, a mark takes too. The notes example's mark is now one,
and its reference model agrees: typing at the mark leaves it in place.

</content>
</entry>
<entry>
<title>Compile text, cursors and strings to module v3</title>
<updated>2026-09-25T12:01:12Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-25T12:01:12Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=030048d39c8ce353cca8842a9ad0ab2765290e59'/>
<id>urn:sha1:030048d39c8ce353cca8842a9ad0ab2765290e59</id>
<content type='text'>
aup now emits Pure module v3 and adds text states with string initializers,
cursors bound to a text, text inputs, string literals with escapes and
{interpolation} of numbers and text, cursor distances in chars and lines,
.start/.end, insert/remove, name.line(cursor), .chars/.lines/.bytes on text,
.chars/.line on cursors, and text(bytes)/bytes(text). Replies and replace
accept text as its UTF-8 bytes. Views are numbers or text. Up to 32 inputs.

examples/notes.aup is a small editor. make check replays random typing
(ASCII, Korean, emoji, combining marks, NUL, newlines), moves and deletions
against a Python reference model: 4,800 snapshots of text, cursor, mark and
views match. It also checks escapes and number text, 16 new diagnostics, a
document loaded into text and saved back, and all earlier parity; the
compiler and the Pure executor each pass under ASan/UBSan.

</content>
</entry>
</feed>
