<feed xmlns='http://www.w3.org/2005/Atom'>
<title>aup/examples/tally.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-26T15:38:33Z</updated>
<entry>
<title>Add keyed lists and text comparison</title>
<updated>2026-09-26T15:38:33Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-26T15:38:33Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=e90d494d718762d402871c9194ab036088dd9e0c'/>
<id>urn:sha1:e90d494d718762d402871c9194ab036088dd9e0c</id>
<content type='text'>
state xs: list of R by field keeps its items in that field's order, each
key once: xs.add(R { ... }) places an item (a taken key fails the event
with exists), xs[key] finds one by halving (its field, or its index),
xs.has(key) asks, xs.remove(key) removes. append and insert are refused
on a keyed list, add on another, and a key field is never assigned.
Texts compare with == != &lt; &lt;= &gt; &gt;= by their bytes.

Checked against a Python model over 3,600 random steps with a text-keyed
and a number-keyed list; 13 diagnostics; examples/tally.aup.

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