<feed xmlns='http://www.w3.org/2005/Atom'>
<title>aup/Makefile, 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-10-18T18:30:16Z</updated>
<entry>
<title>Module format v7 (Pure 027's 4b-2): keyed documents gone from the language: no bytes by key, message by key, name[key] or .replace(first .. last, value), the opcodes DOC, DOC_SIZE and REPLACE (those after them moved up), the header 38 bytes; examples/editor.aup and bounded-editor.aup gone (examples/documents.aup does their work in a keyed list), and with them the parity with the earlier editor (documents_model checks the new one); diagnostics on documents rewritten for plain messages or gone (304); a module's records counted at their v7 place; a field changed by '=' said so where a call was written</title>
<updated>2026-10-18T18:30:16Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-10-18T18:30:16Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=26658fea927aa87e861c936b2d7aa4163d38bdb4'/>
<id>urn:sha1:26658fea927aa87e861c936b2d7aa4163d38bdb4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Write a library's record as the app does in every hint, and post its rows over HTTP</title>
<updated>2026-10-04T10:57:04Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-10-04T10:57:04Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=31e4f8aab2d4bac7daaa4c849244f9789ded73d4'/>
<id>urn:sha1:31e4f8aab2d4bac7daaa4c849244f9789ded73d4</id>
<content type='text'>
The hints of keyed lists, has and a whole item named a library's record
by its plain name, which the app cannot write: they say store.User now.
library_records posts a message whose rows are a library's records to
pure-serve (make check builds it) and reads them back.
</content>
</entry>
<entry>
<title>Leave pure-serve's checks to Pure</title>
<updated>2026-09-27T12:48:55Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-27T12:48:55Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=d03092f8dc3efe2231c817031be0a744ac6e60e1'/>
<id>urn:sha1:d03092f8dc3efe2231c817031be0a744ac6e60e1</id>
<content type='text'>
aup's check keeps what it owns: the language, the compiler, and apps written
in aup matching their references on Pure's loader. The HTTP host's checks
moved to Pure's tests/check.py, which builds its apps with this compiler.

</content>
</entry>
<entry>
<title>Name aup's one part: compiler/</title>
<updated>2026-09-27T12:45:45Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-27T12:45:45Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=56b8202a23eb08167f27fea4782152959f8ea9ef'/>
<id>urn:sha1:56b8202a23eb08167f27fea4782152959f8ea9ef</id>
<content type='text'>
As in Pure and Vega, the top level directories are the parts; aup has one,
the compiler, checked end to end by tests/check.py.

</content>
</entry>
<entry>
<title>Build Pure's hosts from its top level</title>
<updated>2026-09-27T12:14:46Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-27T12:14:46Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=04bc25fdf06247f3db781f581195ee7a16165a72'/>
<id>urn:sha1:04bc25fdf06247f3db781f581195ee7a16165a72</id>
<content type='text'>
Pure now keeps the app model, the store and pure-serve in core/, store/ and
serve/ with one top-level make; the earlier document server the parity
checks compare against stays in prototypes/connections.

</content>
</entry>
<entry>
<title>Check pure-serve, pipelined connections included</title>
<updated>2026-09-26T04:42:09Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-26T04:42:09Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=8461d74f19828967c849fc6f08f405d47216987d'/>
<id>urn:sha1:8461d74f19828967c849fc6f08f405d47216987d</id>
<content type='text'>
The server checks run pure-serve, which replaced the module mode of the
old document server. A keep-alive client and pipelined requests (sent in
one write, and in writes that cut heads and bodies) must get the same
answers, in order, as separate connections.

</content>
</entry>
<entry>
<title>Check the module server and saving in bursts</title>
<updated>2026-09-26T03:54:32Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-26T03:54:32Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=bfee839d3a3a1d42ba4fe83ce39ba83a733988b9'/>
<id>urn:sha1:bfee839d3a3a1d42ba4fe83ce39ba83a733988b9</id>
<content type='text'>
The HTTP document server running editor.aup must answer random requests
exactly as the server running editor.pure (status, revision, error and
body); concurrent edits must share commits; and every edit it acknowledged
must survive kill -9. Every other stored run of the list app and the text
editor saves in bursts and still matches its reference model across
restarts.

</content>
</entry>
<entry>
<title>Emit Pure module format v4</title>
<updated>2026-09-25T12:27:11Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-25T12:27:11Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=b4ec5eeaab82ee7c876f7d02e6430997f7240899'/>
<id>urn:sha1:b4ec5eeaab82ee7c876f7d02e6430997f7240899</id>
<content type='text'>
Pure now loads only v4 modules. The new header counts records, which aup
does not declare yet, so the output changes only in its magic.

</content>
</entry>
<entry>
<title>Compile messages and keyed documents to module v2</title>
<updated>2026-09-25T10:55:47Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-25T10:55:47Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=3265bc65ef6d2e399be6141f678f4f299a2d7491'/>
<id>urn:sha1:3265bc65ef6d2e399be6141f678f4f299a2d7491</id>
<content type='text'>
aup now emits Pure module v2 and adds keyed byte collections
(state documents: bytes by key), message inputs by key with u32 and a
trailing bytes field, on-message handlers, field access, name[key] reads
and .bytes sizes, replace(a .. b, value), reply and require, all checked
for number/bytes types with file:line:column diagnostics.

The document editor and its size-bounded variant are rewritten in aup.
make check runs them through pure-edit-module against pure-edit running the
original editor.pure programs: 1,280 random show/edit/apply operations,
including conflicts, limits, missing documents, budgets and invalid keys,
produce byte-identical stdout, stderr and exit codes, and each CLI reads the
other's store identically. v0a parity with the workbench engine, 33
diagnostics and generated/damaged programs still pass, also with a
sanitizer-built compiler.

</content>
</entry>
<entry>
<title>Compile v0a programs to verified Pure modules</title>
<updated>2026-09-25T10:05:51Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-25T10:05:51Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/aup/commit/?id=3e35975ee9120042baa0e8fe2bb2d52311204e84'/>
<id>urn:sha1:3e35975ee9120042baa0e8fe2bb2d52311204e84</id>
<content type='text'>
aup check/build parse states, key inputs, views and handlers (with if/else
and else-if), resolve names, generate forward-only stack code and encode a
Pure module v1 deterministically. Diagnostics carry file:line:column.

make check loads every module with Pure's verifier, checks determinism, 20
diagnostics and accepted forms, replacement by name, 600 generated programs
and damaged sources (every emitted module verifies), and replays random event
scripts against the workbench Zig engine: 16,667 snapshots across counter,
toggle, charge, else-if and fault programs matched, including 921 failed
events. The sanitizer-built compiler passes the same checks.

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