Update whitepaper: fix preamble, add full AGPL with permacomputer preamble

Preamble: updated to reflect four implementations (Python, C+JIT, asm).
Abstract: updated line counts and implementation descriptions.
License: full AGPL-3.0-only text with permacomputer preamble, NO WARRANTY,
  copyright, and project URLs. Matching format from categorization paper.
Logos: permacomputer-logo.jpg and gnu-logo.png retained.
Citations: "Stress on Our Shared Heart" (russell@unturf, April 2026) confirmed.
This commit is contained in:
russell@unturf.com 2026-04-15 16:16:27 -04:00
parent 3dea1f3000
commit 8c2a870382
2 changed files with 283 additions and 198 deletions

View file

@ -54,7 +54,7 @@ endobj
endobj
10 0 obj
<<
/Annots [ 7 0 R 8 0 R ] /Contents 80 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Annots [ 7 0 R 8 0 R ] /Contents 81 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] /XObject <<
/FormXob.d3ecd28ca03f587d6940049748681018 3 0 R
>>
@ -66,7 +66,7 @@ endobj
endobj
11 0 obj
<<
/Contents 81 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 82 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
@ -76,7 +76,7 @@ endobj
endobj
12 0 obj
<<
/Contents 82 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 83 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
@ -86,7 +86,7 @@ endobj
endobj
13 0 obj
<<
/Contents 83 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 84 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
@ -101,7 +101,7 @@ endobj
endobj
15 0 obj
<<
/Contents 84 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 85 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
@ -111,7 +111,7 @@ endobj
endobj
16 0 obj
<<
/Contents 85 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 86 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
@ -121,7 +121,7 @@ endobj
endobj
17 0 obj
<<
/Contents 86 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 87 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
@ -131,7 +131,7 @@ endobj
endobj
18 0 obj
<<
/Contents 87 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 88 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
@ -141,7 +141,7 @@ endobj
endobj
19 0 obj
<<
/Contents 88 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 89 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
@ -158,7 +158,7 @@ endobj
endobj
21 0 obj
<<
/Annots [ 20 0 R ] /Contents 89 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Annots [ 20 0 R ] /Contents 90 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0
/Trans <<
@ -168,7 +168,7 @@ endobj
endobj
22 0 obj
<<
/Contents 90 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 91 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
@ -199,7 +199,7 @@ endobj
endobj
26 0 obj
<<
/Annots [ 23 0 R 24 0 R 25 0 R ] /Contents 91 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Annots [ 23 0 R 24 0 R 25 0 R ] /Contents 92 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0
/Trans <<
@ -223,7 +223,7 @@ endobj
endobj
29 0 obj
<<
/Annots [ 27 0 R 28 0 R ] /Contents 92 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Annots [ 27 0 R 28 0 R ] /Contents 93 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0
/Trans <<
@ -249,7 +249,7 @@ Gb"0;0`_7S!5bE.WFlYNTE"rlzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
endobj
32 0 obj
<<
/Contents 93 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 79 0 R /Resources <<
/Contents 94 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] /XObject <<
/FormXob.d3ecd28ca03f587d6940049748681018 3 0 R /FormXob.fc331aff86ff817ecac4c4ce4b2ecd3a 30 0 R
>>
@ -261,252 +261,262 @@ endobj
endobj
33 0 obj
<<
/Outlines 35 0 R /PageLabels 94 0 R /PageMode /UseNone /Pages 79 0 R /Type /Catalog
/Contents 95 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 80 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ]
>> /Rotate 0 /Trans <<
>>
/Type /Page
>>
endobj
34 0 obj
<<
/Author () /CreationDate (D:20260415144154-04'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20260415144154-04'00') /Producer (ReportLab PDF Library - \(opensource\))
/Subject (\(unspecified\)) /Title () /Trapped /False
/Outlines 36 0 R /PageLabels 96 0 R /PageMode /UseNone /Pages 80 0 R /Type /Catalog
>>
endobj
35 0 obj
<<
/Count 52 /First 36 0 R /Last 36 0 R /Type /Outlines
/Author () /CreationDate (D:20260415161613-04'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20260415161613-04'00') /Producer (ReportLab PDF Library - \(opensource\))
/Subject (\(unspecified\)) /Title () /Trapped /False
>>
endobj
36 0 obj
<<
/Count 42 /Dest [ 10 0 R /XYZ 57.02362 525.9477 0 ] /First 37 0 R /Last 78 0 R /Parent 35 0 R /Title (Feedback Is All You Need)
/Count 52 /First 37 0 R /Last 37 0 R /Type /Outlines
>>
endobj
37 0 obj
<<
/Dest [ 10 0 R /XYZ 57.02362 370.4013 0 ] /Next 38 0 R /Parent 36 0 R /Title (Abstract)
/Count 42 /Dest [ 10 0 R /XYZ 57.02362 525.9477 0 ] /First 38 0 R /Last 79 0 R /Parent 36 0 R /Title (Feedback Is All You Need)
>>
endobj
38 0 obj
<<
/Dest [ 11 0 R /XYZ 57.02362 765.0236 0 ] /Next 39 0 R /Parent 36 0 R /Prev 37 0 R /Title (1. The Problem: Interpreters That Cannot Feed Back)
/Dest [ 10 0 R /XYZ 57.02362 370.4013 0 ] /Next 39 0 R /Parent 37 0 R /Title (Abstract)
>>
endobj
39 0 obj
<<
/Count 2 /Dest [ 11 0 R /XYZ 57.02362 557.8236 0 ] /First 40 0 R /Last 41 0 R /Next 42 0 R /Parent 36 0 R
/Prev 38 0 R /Title (2. Architecture: One File, Two Evaluators)
/Dest [ 11 0 R /XYZ 57.02362 765.0236 0 ] /Next 40 0 R /Parent 37 0 R /Prev 38 0 R /Title (1. The Problem: Interpreters That Cannot Feed Back)
>>
endobj
40 0 obj
<<
/Dest [ 11 0 R /XYZ 57.02362 372.6236 0 ] /Next 41 0 R /Parent 39 0 R /Title (2.1 Type System)
/Count 2 /Dest [ 11 0 R /XYZ 57.02362 557.8236 0 ] /First 41 0 R /Last 42 0 R /Next 43 0 R /Parent 37 0 R
/Prev 39 0 R /Title (2. Architecture: One File, Two Evaluators)
>>
endobj
41 0 obj
<<
/Dest [ 11 0 R /XYZ 57.02362 136.6236 0 ] /Parent 39 0 R /Prev 40 0 R /Title (2.2 The Bytecode)
/Dest [ 11 0 R /XYZ 57.02362 372.6236 0 ] /Next 42 0 R /Parent 40 0 R /Title (2.1 Type System)
>>
endobj
42 0 obj
<<
/Dest [ 12 0 R /XYZ 57.02362 411.0236 0 ] /Next 43 0 R /Parent 36 0 R /Prev 39 0 R /Title (3. The Explicit Frame Stack)
/Dest [ 11 0 R /XYZ 57.02362 136.6236 0 ] /Parent 40 0 R /Prev 41 0 R /Title (2.2 The Bytecode)
>>
endobj
43 0 obj
<<
/Count 2 /Dest [ 13 0 R /XYZ 57.02362 711.0236 0 ] /First 44 0 R /Last 45 0 R /Next 46 0 R /Parent 36 0 R
/Prev 42 0 R /Title (4. Continuations: Feedback as a Data Structure)
/Dest [ 12 0 R /XYZ 57.02362 411.0236 0 ] /Next 44 0 R /Parent 37 0 R /Prev 40 0 R /Title (3. The Explicit Frame Stack)
>>
endobj
44 0 obj
<<
/Dest [ 13 0 R /XYZ 57.02362 303.4236 0 ] /Next 45 0 R /Parent 43 0 R /Title (4.1 Generators from Continuations)
/Count 2 /Dest [ 13 0 R /XYZ 57.02362 711.0236 0 ] /First 45 0 R /Last 46 0 R /Next 47 0 R /Parent 37 0 R
/Prev 43 0 R /Title (4. Continuations: Feedback as a Data Structure)
>>
endobj
45 0 obj
<<
/Dest [ 15 0 R /XYZ 57.02362 727.0236 0 ] /Parent 43 0 R /Prev 44 0 R /Title (4.2 Why "Feedback Is All You Need")
/Dest [ 13 0 R /XYZ 57.02362 303.4236 0 ] /Next 46 0 R /Parent 44 0 R /Title (4.1 Generators from Continuations)
>>
endobj
46 0 obj
<<
/Count 3 /Dest [ 15 0 R /XYZ 57.02362 553.0236 0 ] /First 47 0 R /Last 49 0 R /Next 50 0 R /Parent 36 0 R
/Prev 43 0 R /Title (5. Optimizations)
/Dest [ 15 0 R /XYZ 57.02362 727.0236 0 ] /Parent 44 0 R /Prev 45 0 R /Title (4.2 Why "Feedback Is All You Need")
>>
endobj
47 0 obj
<<
/Dest [ 15 0 R /XYZ 57.02362 525.8236 0 ] /Next 48 0 R /Parent 46 0 R /Title (5.1 Peephole Optimizer)
/Count 3 /Dest [ 15 0 R /XYZ 57.02362 553.0236 0 ] /First 48 0 R /Last 50 0 R /Next 51 0 R /Parent 37 0 R
/Prev 44 0 R /Title (5. Optimizations)
>>
endobj
48 0 obj
<<
/Dest [ 15 0 R /XYZ 57.02362 379.8236 0 ] /Next 49 0 R /Parent 46 0 R /Prev 47 0 R /Title (5.2 Inline Cache)
/Dest [ 15 0 R /XYZ 57.02362 525.8236 0 ] /Next 49 0 R /Parent 47 0 R /Title (5.1 Peephole Optimizer)
>>
endobj
49 0 obj
<<
/Dest [ 15 0 R /XYZ 57.02362 179.8236 0 ] /Parent 46 0 R /Prev 48 0 R /Title (5.3 Constant Folding)
/Dest [ 15 0 R /XYZ 57.02362 379.8236 0 ] /Next 50 0 R /Parent 47 0 R /Prev 48 0 R /Title (5.2 Inline Cache)
>>
endobj
50 0 obj
<<
/Count 3 /Dest [ 16 0 R /XYZ 57.02362 723.0236 0 ] /First 51 0 R /Last 53 0 R /Next 54 0 R /Parent 36 0 R
/Prev 46 0 R /Title (6. Benchmarks: Three Evaluators vs CPython)
/Dest [ 15 0 R /XYZ 57.02362 179.8236 0 ] /Parent 47 0 R /Prev 49 0 R /Title (5.3 Constant Folding)
>>
endobj
51 0 obj
<<
/Dest [ 16 0 R /XYZ 57.02362 663.8236 0 ] /Next 52 0 R /Parent 50 0 R /Title (6.1 Raw Results)
/Count 3 /Dest [ 16 0 R /XYZ 57.02362 723.0236 0 ] /First 52 0 R /Last 54 0 R /Next 55 0 R /Parent 37 0 R
/Prev 47 0 R /Title (6. Benchmarks: Three Evaluators vs CPython)
>>
endobj
52 0 obj
<<
/Dest [ 16 0 R /XYZ 57.02362 397.8236 0 ] /Next 53 0 R /Parent 50 0 R /Prev 51 0 R /Title (6.2 Analysis)
/Dest [ 16 0 R /XYZ 57.02362 663.8236 0 ] /Next 53 0 R /Parent 51 0 R /Title (6.1 Raw Results)
>>
endobj
53 0 obj
<<
/Dest [ 16 0 R /XYZ 57.02362 191.8236 0 ] /Parent 50 0 R /Prev 52 0 R /Title (6.3 What the Benchmarks Test)
/Dest [ 16 0 R /XYZ 57.02362 397.8236 0 ] /Next 54 0 R /Parent 51 0 R /Prev 52 0 R /Title (6.2 Analysis)
>>
endobj
54 0 obj
<<
/Count 4 /Dest [ 17 0 R /XYZ 57.02362 699.0236 0 ] /First 55 0 R /Last 58 0 R /Next 59 0 R /Parent 36 0 R
/Prev 50 0 R /Title (7. Portal: Machine State Serialization)
/Dest [ 16 0 R /XYZ 57.02362 191.8236 0 ] /Parent 51 0 R /Prev 53 0 R /Title (6.3 What the Benchmarks Test)
>>
endobj
55 0 obj
<<
/Dest [ 17 0 R /XYZ 57.02362 639.8236 0 ] /Next 56 0 R /Parent 54 0 R /Title (7.1 Serialization)
/Count 4 /Dest [ 17 0 R /XYZ 57.02362 699.0236 0 ] /First 56 0 R /Last 59 0 R /Next 60 0 R /Parent 37 0 R
/Prev 51 0 R /Title (7. Portal: Machine State Serialization)
>>
endobj
56 0 obj
<<
/Dest [ 17 0 R /XYZ 57.02362 487.8236 0 ] /Next 57 0 R /Parent 54 0 R /Prev 55 0 R /Title (7.2 Deserialization)
/Dest [ 17 0 R /XYZ 57.02362 639.8236 0 ] /Next 57 0 R /Parent 55 0 R /Title (7.1 Serialization)
>>
endobj
57 0 obj
<<
/Dest [ 17 0 R /XYZ 57.02362 377.8236 0 ] /Next 58 0 R /Parent 54 0 R /Prev 56 0 R /Title (7.3 Checkpoint & Resume)
/Dest [ 17 0 R /XYZ 57.02362 487.8236 0 ] /Next 58 0 R /Parent 55 0 R /Prev 56 0 R /Title (7.2 Deserialization)
>>
endobj
58 0 obj
<<
/Dest [ 18 0 R /XYZ 57.02362 765.0236 0 ] /Parent 54 0 R /Prev 57 0 R /Title (7.4 Use Case: Distributed Primality Testing)
/Dest [ 17 0 R /XYZ 57.02362 377.8236 0 ] /Next 59 0 R /Parent 55 0 R /Prev 57 0 R /Title (7.3 Checkpoint & Resume)
>>
endobj
59 0 obj
<<
/Count 6 /Dest [ 18 0 R /XYZ 57.02362 564.2236 0 ] /First 60 0 R /Last 65 0 R /Next 66 0 R /Parent 36 0 R
/Prev 54 0 R /Title (8. The EML Universality Proof)
/Dest [ 18 0 R /XYZ 57.02362 765.0236 0 ] /Parent 55 0 R /Prev 58 0 R /Title (7.4 Use Case: Distributed Primality Testing)
>>
endobj
60 0 obj
<<
/Dest [ 18 0 R /XYZ 57.02362 487.0236 0 ] /Next 61 0 R /Parent 59 0 R /Title (8.1 The Operator)
/Count 6 /Dest [ 18 0 R /XYZ 57.02362 564.2236 0 ] /First 61 0 R /Last 66 0 R /Next 67 0 R /Parent 37 0 R
/Prev 55 0 R /Title (8. The EML Universality Proof)
>>
endobj
61 0 obj
<<
/Dest [ 18 0 R /XYZ 57.02362 410.2236 0 ] /Next 62 0 R /Parent 59 0 R /Prev 60 0 R /Title (8.2 Stage 1: Core Functions \(Depth 1--3\))
/Dest [ 18 0 R /XYZ 57.02362 487.0236 0 ] /Next 62 0 R /Parent 60 0 R /Title (8.1 The Operator)
>>
endobj
62 0 obj
<<
/Dest [ 18 0 R /XYZ 57.02362 290.2236 0 ] /Next 63 0 R /Parent 59 0 R /Prev 61 0 R /Title (8.3 Stage 2: Arithmetic)
/Dest [ 18 0 R /XYZ 57.02362 410.2236 0 ] /Next 63 0 R /Parent 60 0 R /Prev 61 0 R /Title (8.2 Stage 1: Core Functions \(Depth 1--3\))
>>
endobj
63 0 obj
<<
/Dest [ 18 0 R /XYZ 57.02362 175.8236 0 ] /Next 64 0 R /Parent 59 0 R /Prev 62 0 R /Title (8.4 Stage 3: Complex Plane Access)
/Dest [ 18 0 R /XYZ 57.02362 290.2236 0 ] /Next 64 0 R /Parent 60 0 R /Prev 62 0 R /Title (8.3 Stage 2: Arithmetic)
>>
endobj
64 0 obj
<<
/Dest [ 19 0 R /XYZ 57.02362 765.0236 0 ] /Next 65 0 R /Parent 59 0 R /Prev 63 0 R /Title (8.5 Stage 4: Trigonometry via Euler)
/Dest [ 18 0 R /XYZ 57.02362 175.8236 0 ] /Next 65 0 R /Parent 60 0 R /Prev 63 0 R /Title (8.4 Stage 3: Complex Plane Access)
>>
endobj
65 0 obj
<<
/Dest [ 19 0 R /XYZ 57.02362 669.0236 0 ] /Parent 59 0 R /Prev 64 0 R /Title (8.6 Verification & Friction Analysis)
/Dest [ 19 0 R /XYZ 57.02362 765.0236 0 ] /Next 66 0 R /Parent 60 0 R /Prev 64 0 R /Title (8.5 Stage 4: Trigonometry via Euler)
>>
endobj
66 0 obj
<<
/Dest [ 19 0 R /XYZ 57.02362 165.8236 0 ] /Next 67 0 R /Parent 36 0 R /Prev 59 0 R /Title (9. Language Coverage)
/Dest [ 19 0 R /XYZ 57.02362 669.0236 0 ] /Parent 60 0 R /Prev 65 0 R /Title (8.6 Verification & Friction Analysis)
>>
endobj
67 0 obj
<<
/Dest [ 21 0 R /XYZ 57.02362 621.0236 0 ] /Next 68 0 R /Parent 36 0 R /Prev 66 0 R /Title (10. Relationship to Companion Papers)
/Dest [ 19 0 R /XYZ 57.02362 165.8236 0 ] /Next 68 0 R /Parent 37 0 R /Prev 60 0 R /Title (9. Language Coverage)
>>
endobj
68 0 obj
<<
/Count 1 /Dest [ 21 0 R /XYZ 57.02362 371.8236 0 ] /First 69 0 R /Last 69 0 R /Next 70 0 R /Parent 36 0 R
/Prev 67 0 R /Title (11. Four Implementations, One Language)
/Dest [ 21 0 R /XYZ 57.02362 621.0236 0 ] /Next 69 0 R /Parent 37 0 R /Prev 67 0 R /Title (10. Relationship to Companion Papers)
>>
endobj
69 0 obj
<<
/Dest [ 22 0 R /XYZ 57.02362 715.0236 0 ] /Parent 68 0 R /Title (11.1 Test Coverage)
/Count 1 /Dest [ 21 0 R /XYZ 57.02362 371.8236 0 ] /First 70 0 R /Last 70 0 R /Next 71 0 R /Parent 37 0 R
/Prev 68 0 R /Title (11. Four Implementations, One Language)
>>
endobj
70 0 obj
<<
/Count 3 /Dest [ 22 0 R /XYZ 57.02362 559.0236 0 ] /First 71 0 R /Last 73 0 R /Next 74 0 R /Parent 36 0 R
/Prev 68 0 R /Title (12. MOAD Audit: Fixing What We Built)
/Dest [ 22 0 R /XYZ 57.02362 715.0236 0 ] /Parent 69 0 R /Title (11.1 Test Coverage)
>>
endobj
71 0 obj
<<
/Dest [ 22 0 R /XYZ 57.02362 511.8236 0 ] /Next 72 0 R /Parent 70 0 R /Title (12.1 MOAD-0001: The Sedimentary Defect in Our Own Code)
/Count 3 /Dest [ 22 0 R /XYZ 57.02362 559.0236 0 ] /First 72 0 R /Last 74 0 R /Next 75 0 R /Parent 37 0 R
/Prev 69 0 R /Title (12. MOAD Audit: Fixing What We Built)
>>
endobj
72 0 obj
<<
/Dest [ 22 0 R /XYZ 57.02362 143.0236 0 ] /Next 73 0 R /Parent 70 0 R /Prev 71 0 R /Title (12.2 MOAD-0002: The Intertangle in Our Own Design)
/Dest [ 22 0 R /XYZ 57.02362 511.8236 0 ] /Next 73 0 R /Parent 71 0 R /Title (12.1 MOAD-0001: The Sedimentary Defect in Our Own Code)
>>
endobj
73 0 obj
<<
/Dest [ 26 0 R /XYZ 57.02362 583.0236 0 ] /Parent 70 0 R /Prev 72 0 R /Title (12.3 Our Shared Infrastructure)
/Dest [ 22 0 R /XYZ 57.02362 143.0236 0 ] /Next 74 0 R /Parent 71 0 R /Prev 72 0 R /Title (12.2 MOAD-0002: The Intertangle in Our Own Design)
>>
endobj
74 0 obj
<<
/Dest [ 26 0 R /XYZ 57.02362 367.0236 0 ] /Next 75 0 R /Parent 36 0 R /Prev 70 0 R /Title (13. Future Work)
/Dest [ 26 0 R /XYZ 57.02362 583.0236 0 ] /Parent 71 0 R /Prev 73 0 R /Title (12.3 Our Shared Infrastructure)
>>
endobj
75 0 obj
<<
/Dest [ 26 0 R /XYZ 57.02362 213.8236 0 ] /Next 76 0 R /Parent 36 0 R /Prev 74 0 R /Title (14. The Defect in the Model)
/Dest [ 26 0 R /XYZ 57.02362 367.0236 0 ] /Next 76 0 R /Parent 37 0 R /Prev 71 0 R /Title (13. Future Work)
>>
endobj
76 0 obj
<<
/Dest [ 29 0 R /XYZ 57.02362 231.0236 0 ] /Next 77 0 R /Parent 36 0 R /Prev 75 0 R /Title (Citation)
/Dest [ 26 0 R /XYZ 57.02362 213.8236 0 ] /Next 77 0 R /Parent 37 0 R /Prev 75 0 R /Title (14. The Defect in the Model)
>>
endobj
77 0 obj
<<
/Dest [ 29 0 R /XYZ 57.02362 149.8236 0 ] /Next 78 0 R /Parent 36 0 R /Prev 76 0 R /Title (References)
/Dest [ 29 0 R /XYZ 57.02362 231.0236 0 ] /Next 78 0 R /Parent 37 0 R /Prev 76 0 R /Title (Citation)
>>
endobj
78 0 obj
<<
/Dest [ 32 0 R /XYZ 57.02362 765.0236 0 ] /Parent 36 0 R /Prev 77 0 R /Title (License)
/Dest [ 29 0 R /XYZ 57.02362 149.8236 0 ] /Next 79 0 R /Parent 37 0 R /Prev 77 0 R /Title (References)
>>
endobj
79 0 obj
<<
/Count 14 /Kids [ 10 0 R 11 0 R 12 0 R 13 0 R 15 0 R 16 0 R 17 0 R 18 0 R 19 0 R 21 0 R
22 0 R 26 0 R 29 0 R 32 0 R ] /Type /Pages
/Dest [ 32 0 R /XYZ 57.02362 765.0236 0 ] /Parent 37 0 R /Prev 78 0 R /Title (License)
>>
endobj
80 0 obj
<<
/Length 4139
/Count 15 /Kids [ 10 0 R 11 0 R 12 0 R 13 0 R 15 0 R 16 0 R 17 0 R 18 0 R 19 0 R 21 0 R
22 0 R 26 0 R 29 0 R 32 0 R 33 0 R ] /Type /Pages
>>
endobj
81 0 obj
<<
/Length 4288
>>
stream
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
@ -595,19 +605,19 @@ BT 1 0 0 1 0 26 Tm 1.342739 Tw 12 TL /F1 10 Tf 0 0 0 rg (A programming language
Q
Q
q
1 0 0 1 57.02362 181.2013 cm
1 0 0 1 57.02362 169.2013 cm
q
BT 1 0 0 1 0 74 Tm 1.033223 Tw 12 TL /F3 10 Tf 0 0 0 rg (uncommonlisp) Tj /F1 10 Tf ( proves this by implementing a complete Scheme in a single Python file \(3,261 lines, zero) Tj T* 0 Tw 2.467122 Tw (external dependencies beyond the standard library\). A stack-based bytecode compiler achieves 7--19x) Tj T* 0 Tw 1.964862 Tw (speedups over tree-walking interpretation. An explicit frame stack replaces Python's call stack, enabling) Tj T* 0 Tw .056027 Tw (tail-call optimization of arbitrary depth & full first-class continuations \() Tj /F5 10 Tf (call/cc) Tj /F1 10 Tf (\) that support escape, upward,) Tj T* 0 Tw -0.08869 Tw (& multi-shot invocation. A peephole optimizer, inline cache, & constant folder tighten the generated bytecode.) Tj T* 0 Tw .977565 Tw (A portal system serializes the entire machine state \(environment, continuation stack, instruction pointer\) to) Tj T* 0 Tw (JSON & resumes it on another machine.) Tj T* ET
BT 1 0 0 1 0 86 Tm 1.033223 Tw 12 TL /F3 10 Tf 0 0 0 rg (uncommonlisp) Tj /F1 10 Tf ( proves this by implementing a complete Scheme in four ways: a single Python file \(3,324) Tj T* 0 Tw .966147 Tw (lines\), a C implementation with x86_64 JIT \(9,429 lines, 10--24x faster than CPython\), and a pure x86_64) Tj T* 0 Tw 2.720759 Tw (assembly interpreter \(2,592 lines, 13KB binary, zero dependencies\). A stack-based bytecode compiler) Tj T* 0 Tw 1.641529 Tw (achieves 7--19x speedups over tree-walking interpretation. An explicit frame stack replaces Python's call) Tj T* 0 Tw .569104 Tw (stack, enabling tail-call optimization of arbitrary depth & full first-class continuations \() Tj /F5 10 Tf (call/cc) Tj /F1 10 Tf (\) that support) Tj T* 0 Tw 1.182739 Tw (escape, upward, & multi-shot invocation. A peephole optimizer, inline cache, & constant folder tighten the) Tj T* 0 Tw 1.242362 Tw (generated bytecode. A portal system serializes the entire machine state \(environment, continuation stack,) Tj T* 0 Tw (instruction pointer\) to JSON & resumes it on another machine.) Tj T* ET
Q
Q
q
1 0 0 1 57.02362 127.2013 cm
1 0 0 1 57.02362 115.2013 cm
q
BT 1 0 0 1 0 38 Tm .352397 Tw 12 TL /F1 10 Tf 0 0 0 rg (The paper further presents the EML universality proof: a single operator ) Tj /F5 10 Tf (eml\(x,) Tj ( ) Tj (y\)) Tj ( ) Tj (=) Tj ( ) Tj (exp\(x\)) Tj ( ) Tj (-) Tj ( ) Tj (ln\(y\)) Tj /F1 10 Tf T* 0 Tw .548453 Tw (with the constant 1 generates all elementary functions \(exp, ln, arithmetic, negation, complex plane access,) Tj T* 0 Tw .319873 Tw (trigonometry\). Verified numerically in Python, verified in uncommonlisp's own bytecode, & proven formally in) Tj T* 0 Tw (Lean 4 with zero ) Tj /F5 10 Tf (sorry) Tj /F1 10 Tf (.) Tj T* ET
Q
Q
q
1 0 0 1 57.02362 109.2013 cm
1 0 0 1 57.02362 97.20126 cm
q
0 0 0 rg
BT 1 0 0 1 0 2 Tm /F1 10 Tf 12 TL (Feedback is the primitive. Continuations are the mechanism. One file is the proof.) Tj T* ET
@ -616,7 +626,7 @@ Q
endstream
endobj
81 0 obj
82 0 obj
<<
/Length 8838
>>
@ -923,7 +933,7 @@ Q
endstream
endobj
82 0 obj
83 0 obj
<<
/Length 6882
>>
@ -1255,7 +1265,7 @@ Q
endstream
endobj
83 0 obj
84 0 obj
<<
/Length 7084
>>
@ -1620,7 +1630,7 @@ Q
endstream
endobj
84 0 obj
85 0 obj
<<
/Length 9324
>>
@ -2083,7 +2093,7 @@ Q
endstream
endobj
85 0 obj
86 0 obj
<<
/Length 12432
>>
@ -2762,7 +2772,7 @@ Q
endstream
endobj
86 0 obj
87 0 obj
<<
/Length 7218
>>
@ -3182,7 +3192,7 @@ Q
endstream
endobj
87 0 obj
88 0 obj
<<
/Length 6103
>>
@ -3367,7 +3377,7 @@ Q
endstream
endobj
88 0 obj
89 0 obj
<<
/Length 10228
>>
@ -3717,7 +3727,7 @@ Q
endstream
endobj
89 0 obj
90 0 obj
<<
/Length 11180
>>
@ -4219,7 +4229,7 @@ Q
endstream
endobj
90 0 obj
91 0 obj
<<
/Length 6883
>>
@ -4490,7 +4500,7 @@ Q
endstream
endobj
91 0 obj
92 0 obj
<<
/Length 7705
>>
@ -4759,7 +4769,7 @@ Q
endstream
endobj
92 0 obj
93 0 obj
<<
/Length 6975
>>
@ -5004,9 +5014,9 @@ Q
endstream
endobj
93 0 obj
94 0 obj
<<
/Length 1048
/Length 2111
>>
stream
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
@ -5068,7 +5078,7 @@ BT 1 0 0 1 0 2 Tm /F4 10 Tf 12 TL 155.3042 0 Td (GNU Affero General Public Licen
Q
Q
q
1 0 0 1 57.02362 261.2922 cm
1 0 0 1 57.02362 69.29221 cm
q
q
1 0 0 1 0 0 cm
@ -5078,11 +5088,10 @@ q
.662745 .662745 .662745 RG
.5 w
.960784 .960784 .960784 rg
n -6 -6 480.0283 21.6 re B*
n -6 -6 480.0283 213.6 re B*
Q
q
0 0 0 rg
BT 1 0 0 1 0 1.6 Tm /F5 8 Tf 9.6 TL (AGPL-3.0-only) Tj T* ET
BT 1 0 0 1 0 193.6 Tm 9.6 TL /F5 8 Tf 0 0 0 rg (AGPL-3.0-only) Tj T* T* (PERMACOMPUTER PREAMBLE - NO WARRANTY) Tj T* T* (This is free software for the public good of a permacomputer hosted at) Tj T* (permacomputer.com, an always-on computer by the people, for the people. One) Tj T* (which is durable, easy to repair, ) Tj (&) Tj ( distributed like tap water for machine) Tj T* (learning intelligence.) Tj T* T* (The permacomputer is community-owned infrastructure optimized around four values:) Tj T* T* ( TRUTH - Source code must be open source ) Tj (&) Tj ( freely distributed) Tj T* ( FREEDOM - Voluntary participation without corporate control) Tj T* ( HARMONY - Systems operating with minimal waste that self-renew) Tj T* ( LOVE - Individual rights protected while fostering cooperation) Tj T* T* (This software contributes to that vision by proving that feedback) Tj T* (\(the computational primitive of continuations\) composes into a universal) Tj T* (execution model. Four implementations, one language, 836 tests, 12,774) Tj T* (lines. Code is seeds to sprout on any abandoned technology.) Tj T* T* ET
Q
Q
Q
@ -5091,85 +5100,119 @@ Q
endstream
endobj
94 0 obj
<<
/Nums [ 0 95 0 R 1 96 0 R 2 97 0 R 3 98 0 R 4 99 0 R
5 100 0 R 6 101 0 R 7 102 0 R 8 103 0 R 9 104 0 R
10 105 0 R 11 106 0 R 12 107 0 R 13 108 0 R ]
>>
endobj
95 0 obj
<<
/S /D /St 1
/Length 1083
>>
stream
1 0 0 1 0 0 cm BT /F1 12 Tf 14.4 TL ET
q
1 0 0 1 57.02362 588.6236 cm
q
q
1 0 0 1 0 0 cm
q
1 0 0 1 6.6 6.6 cm
q
.662745 .662745 .662745 RG
.5 w
.960784 .960784 .960784 rg
n -6 -6 480.0283 175.2 re B*
Q
q
BT 1 0 0 1 0 155.2 Tm 9.6 TL /F5 8 Tf 0 0 0 rg (Learn more: https://www.permacomputer.com) Tj T* T* (NO WARRANTY. THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND.) Tj T* T* (That said, our permacomputer's digital membrane stratum continuously runs unit,) Tj T* (integration, ) Tj (&) Tj ( functional tests on all of its own software, with our) Tj T* (permacomputer monitoring itself, repairing itself, with minimal human in the) Tj T* (loop guidance. Our machine learning agents do their best to leave no stone) Tj T* (unturned.) Tj T* T* (Copyright \(C\) 2025-2026 TimeHexOn ) Tj (&) Tj ( foxhop ) Tj (&) Tj ( russell@unturf) Tj T* (https://www.timehexon.com) Tj T* (https://www.foxhop.net) Tj T* (https://www.unturf.com/software) Tj T* (https://www.permacomputer.com) Tj T* (https://uncloseai.com) Tj T* (https://russell.ballestrini.net) Tj T* ET
Q
Q
Q
Q
Q
endstream
endobj
96 0 obj
<<
/S /D /St 2
/Nums [ 0 97 0 R 1 98 0 R 2 99 0 R 3 100 0 R 4 101 0 R
5 102 0 R 6 103 0 R 7 104 0 R 8 105 0 R 9 106 0 R
10 107 0 R 11 108 0 R 12 109 0 R 13 110 0 R 14 111 0 R ]
>>
endobj
97 0 obj
<<
/S /D /St 3
/S /D /St 1
>>
endobj
98 0 obj
<<
/S /D /St 4
/S /D /St 2
>>
endobj
99 0 obj
<<
/S /D /St 5
/S /D /St 3
>>
endobj
100 0 obj
<<
/S /D /St 6
/S /D /St 4
>>
endobj
101 0 obj
<<
/S /D /St 7
/S /D /St 5
>>
endobj
102 0 obj
<<
/S /D /St 8
/S /D /St 6
>>
endobj
103 0 obj
<<
/S /D /St 9
/S /D /St 7
>>
endobj
104 0 obj
<<
/S /D /St 10
/S /D /St 8
>>
endobj
105 0 obj
<<
/S /D /St 11
/S /D /St 9
>>
endobj
106 0 obj
<<
/S /D /St 12
/S /D /St 10
>>
endobj
107 0 obj
<<
/S /D /St 13
/S /D /St 11
>>
endobj
108 0 obj
<<
/S /D /St 12
>>
endobj
109 0 obj
<<
/S /D /St 13
>>
endobj
110 0 obj
<<
/S /D /St 14
>>
endobj
111 0 obj
<<
/S /D /St 15
>>
endobj
xref
0 109
0 112
0000000000 65535 f
0000000061 00000 n
0000000143 00000 n
@ -5204,91 +5247,94 @@ xref
0001598907 00000 n
0001599217 00000 n
0001599535 00000 n
0001599641 00000 n
0001599896 00000 n
0001599971 00000 n
0001600121 00000 n
0001600231 00000 n
0001600396 00000 n
0001600591 00000 n
0001600708 00000 n
0001600826 00000 n
0001600968 00000 n
0001601168 00000 n
0001601303 00000 n
0001601439 00000 n
0001601609 00000 n
0001601733 00000 n
0001601864 00000 n
0001601986 00000 n
0001602182 00000 n
0001602299 00000 n
0001602426 00000 n
0001602556 00000 n
0001602748 00000 n
0001602867 00000 n
0001603001 00000 n
0001603139 00000 n
0001603284 00000 n
0001603467 00000 n
0001603585 00000 n
0001603742 00000 n
0001603880 00000 n
0001604028 00000 n
0001604178 00000 n
0001604316 00000 n
0001604451 00000 n
0001604602 00000 n
0001604794 00000 n
0001604901 00000 n
0001605091 00000 n
0001605247 00000 n
0001605411 00000 n
0001605543 00000 n
0001605673 00000 n
0001605815 00000 n
0001605938 00000 n
0001606063 00000 n
0001606172 00000 n
0001606328 00000 n
0001610519 00000 n
0001619409 00000 n
0001626343 00000 n
0001633479 00000 n
0001642855 00000 n
0001655340 00000 n
0001662610 00000 n
0001668765 00000 n
0001679046 00000 n
0001690279 00000 n
0001697214 00000 n
0001704971 00000 n
0001711998 00000 n
0001713098 00000 n
0001713275 00000 n
0001713309 00000 n
0001713343 00000 n
0001713377 00000 n
0001713411 00000 n
0001713445 00000 n
0001713480 00000 n
0001713515 00000 n
0001713550 00000 n
0001713585 00000 n
0001713621 00000 n
0001713657 00000 n
0001713693 00000 n
0001713729 00000 n
0001599741 00000 n
0001599847 00000 n
0001600102 00000 n
0001600177 00000 n
0001600327 00000 n
0001600437 00000 n
0001600602 00000 n
0001600797 00000 n
0001600914 00000 n
0001601032 00000 n
0001601174 00000 n
0001601374 00000 n
0001601509 00000 n
0001601645 00000 n
0001601815 00000 n
0001601939 00000 n
0001602070 00000 n
0001602192 00000 n
0001602388 00000 n
0001602505 00000 n
0001602632 00000 n
0001602762 00000 n
0001602954 00000 n
0001603073 00000 n
0001603207 00000 n
0001603345 00000 n
0001603490 00000 n
0001603673 00000 n
0001603791 00000 n
0001603948 00000 n
0001604086 00000 n
0001604234 00000 n
0001604384 00000 n
0001604522 00000 n
0001604657 00000 n
0001604808 00000 n
0001605000 00000 n
0001605107 00000 n
0001605297 00000 n
0001605453 00000 n
0001605617 00000 n
0001605749 00000 n
0001605879 00000 n
0001606021 00000 n
0001606144 00000 n
0001606269 00000 n
0001606378 00000 n
0001606541 00000 n
0001610881 00000 n
0001619771 00000 n
0001626705 00000 n
0001633841 00000 n
0001643217 00000 n
0001655702 00000 n
0001662972 00000 n
0001669127 00000 n
0001679408 00000 n
0001690641 00000 n
0001697576 00000 n
0001705333 00000 n
0001712360 00000 n
0001714523 00000 n
0001715658 00000 n
0001715848 00000 n
0001715882 00000 n
0001715916 00000 n
0001715950 00000 n
0001715985 00000 n
0001716020 00000 n
0001716055 00000 n
0001716090 00000 n
0001716125 00000 n
0001716160 00000 n
0001716196 00000 n
0001716232 00000 n
0001716268 00000 n
0001716304 00000 n
0001716340 00000 n
trailer
<<
/ID
[<43659c987f79274c7d5230cd31c3cbde><43659c987f79274c7d5230cd31c3cbde>]
[<68a895ef6e6cc348356e330c3719f07d><68a895ef6e6cc348356e330c3719f07d>]
% ReportLab generated PDF document -- digest (opensource)
/Info 34 0 R
/Root 33 0 R
/Size 109
/Info 35 0 R
/Root 34 0 R
/Size 112
>>
startxref
1713765
1716376
%%EOF

View file

@ -13,8 +13,10 @@
..
.. This software contributes to that vision by proving that feedback
.. (the computational primitive of continuations) composes into a universal
.. execution model: a complete Scheme in 3,261 lines of Python, with a
.. bytecode VM, full continuations, & machine state serialization,
.. execution model: a complete Scheme in four implementations (Python,
.. C with x86_64 JIT, pure assembly), with a bytecode VM, full
.. continuations, machine state serialization, & an antimoad scanner
.. that catches the defects our training data encodes,
.. under AGPL-3.0-only.
.. Code is seeds to sprout on any abandoned technology.
@ -56,7 +58,7 @@ Abstract
A programming language needs one primitive to become universal: feedback. A function that receives its own continuation can loop, branch, yield, checkpoint, resume, & migrate. Every control flow pattern reduces to a continuation captured & invoked.
**uncommonlisp** proves this by implementing a complete Scheme in a single Python file (3,261 lines, zero external dependencies beyond the standard library). A stack-based bytecode compiler achieves 7--19x speedups over tree-walking interpretation. An explicit frame stack replaces Python's call stack, enabling tail-call optimization of arbitrary depth & full first-class continuations (``call/cc``) that support escape, upward, & multi-shot invocation. A peephole optimizer, inline cache, & constant folder tighten the generated bytecode. A portal system serializes the entire machine state (environment, continuation stack, instruction pointer) to JSON & resumes it on another machine.
**uncommonlisp** proves this by implementing a complete Scheme in four ways: a single Python file (3,324 lines), a C implementation with x86_64 JIT (9,429 lines, 10--24x faster than CPython), and a pure x86_64 assembly interpreter (2,592 lines, 13KB binary, zero dependencies). A stack-based bytecode compiler achieves 7--19x speedups over tree-walking interpretation. An explicit frame stack replaces Python's call stack, enabling tail-call optimization of arbitrary depth & full first-class continuations (``call/cc``) that support escape, upward, & multi-shot invocation. A peephole optimizer, inline cache, & constant folder tighten the generated bytecode. A portal system serializes the entire machine state (environment, continuation stack, instruction pointer) to JSON & resumes it on another machine.
The paper further presents the EML universality proof: a single operator ``eml(x, y) = exp(x) - ln(y)`` with the constant 1 generates all elementary functions (exp, ln, arithmetic, negation, complex plane access, trigonometry). Verified numerically in Python, verified in uncommonlisp's own bytecode, & proven formally in Lean 4 with zero ``sorry``.
@ -733,3 +735,40 @@ License
::
AGPL-3.0-only
PERMACOMPUTER PREAMBLE - NO WARRANTY
This is free software for the public good of a permacomputer hosted at
permacomputer.com, an always-on computer by the people, for the people. One
which is durable, easy to repair, & distributed like tap water for machine
learning intelligence.
The permacomputer is community-owned infrastructure optimized around four values:
TRUTH - Source code must be open source & freely distributed
FREEDOM - Voluntary participation without corporate control
HARMONY - Systems operating with minimal waste that self-renew
LOVE - Individual rights protected while fostering cooperation
This software contributes to that vision by proving that feedback
(the computational primitive of continuations) composes into a universal
execution model. Four implementations, one language, 836 tests, 12,774
lines. Code is seeds to sprout on any abandoned technology.
Learn more: https://www.permacomputer.com
NO WARRANTY. THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND.
That said, our permacomputer's digital membrane stratum continuously runs unit,
integration, & functional tests on all of its own software, with our
permacomputer monitoring itself, repairing itself, with minimal human in the
loop guidance. Our machine learning agents do their best to leave no stone
unturned.
Copyright (C) 2025-2026 TimeHexOn & foxhop & russell@unturf
https://www.timehexon.com
https://www.foxhop.net
https://www.unturf.com/software
https://www.permacomputer.com
https://uncloseai.com
https://russell.ballestrini.net