Browse code

Add initial Universal Machine emulator

Robert Cranston authored on 19/04/2026 22:10:36
Showing 1 changed files
... ...
@@ -38,6 +38,31 @@ These files are all committed but also added to `.gitignore` and removed by
38 38
 [`sandmark-output.txt`]: sandmark-output.txt
39 39
 [`um-spec.txt`]: um-spec.txt
40 40
 
41
+### Mostly Vetted Platterer (MVP)
42
+
43
+I have completed the first version of the implementation, see [`um.cpp`][].
44
+
45
+It is as pure as I can make it. If someone wants a concise, readable,
46
+programmatic description of the spec this is the version they should look at
47
+(though reading the spec "blind" is a pleasure).
48
+
49
+The `um()` function is 45 self-contained lines. 65 lines total in the file, the
50
+difference being `#include`s and a 11 line `main` to deal with the ugliness of
51
+the outside world. Note that guardrails are only present in `main`, if the
52
+scroll itself has bugs there might be [UB][] galore (which is in spec).
53
+
54
+I have added a `um` [Makefile][] target, which is a dependency of the default
55
+`all` target:
56
+
57
+```sh
58
+make um
59
+# or simply
60
+make
61
+```
62
+
63
+[`um.cpp`]: um.cpp
64
+[UB]: https://en.wikipedia.org/wiki/Undefined_behavior
65
+
41 66
 ## License
42 67
 
43 68
 Licensed under the [ISC License][] unless otherwise noted, see the
Browse code

Archive given files

Robert Cranston authored on 09/05/2025 21:51:04
Showing 1 changed files
... ...
@@ -5,6 +5,39 @@ Research notes regarding the [Cult of the Bound Variable][] and affiliates.
5 5
 [`boundvariable`]: https://git.rcrnstn.net/rcrnstn/cult-of-the-bound-variable
6 6
 [Cult of the Bound Variable]: http://boundvariable.org
7 7
 
8
+## Universal Machine (UM)
9
+
10
+### An puzzling appeal
11
+
12
+The association of amateur computational archaeolinguistics, of which I am
13
+a/the member, has heard the call of Professor Emeritus Harry Q. Bovik and
14
+intend to contribute to the [task][] outlined if we can.
15
+
16
+As an archaeolinguist my first instinct is to sort through what we know so far
17
+and archive it locally, I hope Professor Bovik doesn't not mind. I also hope
18
+you like [AWK][]. The [`Makefile`][] now downloads/generates the following:
19
+
20
+-   [`task.txt`][]: Slightly trimmed plain text version of the task.
21
+-   [`sha1sums.txt`][]: File hashes extracted from the task.
22
+-   [`codex-key.txt`][]: Codex key extracted from the task.
23
+-   `codex.umz`: The codex.
24
+-   `sandmark.umz`: The benchmark.
25
+-   [`sandmark-output.txt`][]: Expected output of the benchmark.
26
+-   [`um-spec.txt`][]: Specification for the Universal Machine.
27
+-   `um.um`: CMU Reference implementation of the Universal Machine.
28
+
29
+These files are all committed but also added to `.gitignore` and removed by
30
+`make clean`.
31
+
32
+[tasks]: http://www.boundvariable.org/task.shtml
33
+[AWK]: https://en.wikipedia.org/wiki/AWK
34
+[`Makefile`]: Makefile
35
+[`task.txt`]: task.txt
36
+[`sha1sums.txt`]: sha1sums.txt
37
+[`codex-key.txt`]: codex-key.txt
38
+[`sandmark-output.txt`]: sandmark-output.txt
39
+[`um-spec.txt`]: um-spec.txt
40
+
8 41
 ## License
9 42
 
10 43
 Licensed under the [ISC License][] unless otherwise noted, see the
Browse code

Add license

Robert Cranston authored on 22/11/2024 01:44:30
Showing 1 changed files
... ...
@@ -4,3 +4,11 @@ Research notes regarding the [Cult of the Bound Variable][] and affiliates.
4 4
 
5 5
 [`boundvariable`]: https://git.rcrnstn.net/rcrnstn/cult-of-the-bound-variable
6 6
 [Cult of the Bound Variable]: http://boundvariable.org
7
+
8
+## License
9
+
10
+Licensed under the [ISC License][] unless otherwise noted, see the
11
+[`LICENSE`][] file.
12
+
13
+[ISC License]: https://choosealicense.com/licenses/isc
14
+[`LICENSE`]: LICENSE
Browse code

Add readme

Robert Cranston authored on 22/11/2024 01:44:19
Showing 1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,6 @@
1
+# [`boundvariable`][]
2
+
3
+Research notes regarding the [Cult of the Bound Variable][] and affiliates.
4
+
5
+[`boundvariable`]: https://git.rcrnstn.net/rcrnstn/cult-of-the-bound-variable
6
+[Cult of the Bound Variable]: http://boundvariable.org