diff --git a/README.md b/README.md index 86f3b7c..04df590 100644 --- a/README.md +++ b/README.md @@ -186,3 +186,30 @@ interrupted and serves a web interface, or with a bound such as are compiled with LLVM even in Debug, because the self-hosted backend emits no coverage instrumentation and the fuzzer has nothing to steer by without it. The sweep stays as the part that runs on every `zig build test`. + +## References cited + +- IEEE and The Open Group. *uuencode — encode a binary file*. IEEE Std + 1003.1-2024 (POSIX), The Open Group Base Specifications Issue 8, 2024. + . + The definition of the historical algorithm this library implements: the + `begin ` and `end` lines, three octets to four characters with + `0x20` added to each, and the optional replacement of `0x20` with `0x60`, + which is the backtick charset. +- IEEE and The Open Group. *uudecode — decode a binary file*. IEEE Std + 1003.1-2024 (POSIX), The Open Group Base Specifications Issue 8, 2024. + . + That a decoder scans its input for the encoded data rather than expecting it + to start the file, which is why the file decoders skip whatever precedes the + `begin` line, and that the file's mode comes from that line. +- *uuencode(5) — format of an encoded uuencode file*. FreeBSD Manual Pages, + FreeBSD 15.1, January 12, 1994. + . The BSD + account of the format: lines of at most 45 bytes, the length character, and + the backtick standing for a count of zero, which is the convention this + library follows by default. +- Python Software Foundation. *binascii — Convert between binary and ASCII*. + Python 3.14 documentation. + . Documents + `binascii.b2a_uu` and its `backtick` flag; the encoder's test vectors in + `src/root.zig` were produced with it, in the historical space charset.