diff options
| author | eunhhu <[email protected]> | 2026-10-13 04:29:52 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-10-13 04:29:52 +0100 |
| commit | 6d677df51faa120a91c44d5f069a0e51f4212727 (patch) | |
| tree | 8997e9fb92ed563d3e17f8d2d022f17f645877a7 /research/experiments/044-specs/run.sh | |
| parent | 6238169f9adec8bc83337ffe0f54f4be756fa558 (diff) | |
| download | pure-6d677df51faa120a91c44d5f069a0e51f4212727.tar.gz pure-6d677df51faa120a91c44d5f069a0e51f4212727.zip | |
Research 140: a suite of eleven specs from different fields (DNS, SHA-256, inflate, JSON, UTF-8 and line breaking, relational queries and graphs, text editing, box layout, HTTP/1.1 by packets, retries and timeouts, constant-time crypto) with five criteria (written in aup and Pure alone, no workaround, lines against a Python reference, time against C, the spec's own vectors passing in Pure's checks on three machines); ten probes (044) show today's aup stops at a byte by position, bit operations, nesting, recursion, variants and reading a character; the core's minimal candidates and the rule against piling up (only what two specs need); SHA-256 and JSON first
Diffstat (limited to 'research/experiments/044-specs/run.sh')
| -rwxr-xr-x | research/experiments/044-specs/run.sh | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/research/experiments/044-specs/run.sh b/research/experiments/044-specs/run.sh new file mode 100755 index 0000000..670d0a7 --- /dev/null +++ b/research/experiments/044-specs/run.sh @@ -0,0 +1,13 @@ +#!/bin/sh +# Research 140: compile each probe with aup and print what it says. A probe is +# the first thing a spec in the suite needs (a byte at a position, a bit +# operation, a record inside a record, a call to itself, a variant, a +# character at a position). AUP is the aup checkout (default ../aup beside +# Pure); the output is the evidence table in 140. +set -u +here=$(cd "$(dirname "$0")" && pwd) +aup=${AUP:-$here/../../../../aup}/build/aup +for f in "$here"/probes/*.aup; do + printf '%s\t' "$(basename "$f")" + if out=$("$aup" build "$f" -o /dev/null 2>&1); then echo "compiles"; else echo "$out" | head -1 | sed "s|^$here/probes/||"; fi +done |
