diff options
| author | Ralph Amissah <ralph.amissah@gmail.com> | 2026-09-29 20:04:55 -0400 |
|---|---|---|
| committer | Ralph Amissah <ralph.amissah@gmail.com> | 2026-10-02 21:39:04 -0400 |
| commit | e4ae72a1e57af96054581f4339557ccaebaac501 (patch) | |
| tree | 5a1bdba1b8715073e643700e28a2538254d09307 /gleam | |
| parent | Gleam: ocda-read, byte for byte the D reader's (diff) | |
README: the reader, in each language, and what writing it found
The library's reader, ocda-read: where it lives and why (src/read/,
kept out of the library in D by dub configuration, in Gleam because
nothing outside src/ is compiled), its modes in each language, and
the two properties it holds, the same output from every form and D ==
Gleam byte for byte. And the one defect it found in the library, the
database loader unable to say what it had not read. The module tables
gain ocda.inventory and the reader, the build notes the three
programs in one result.
(assisted by Claude-Code)
Diffstat (limited to 'gleam')
| -rw-r--r-- | gleam/README.md | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/gleam/README.md b/gleam/README.md index 02afc24..ed4a30b 100644 --- a/gleam/README.md +++ b/gleam/README.md @@ -1,7 +1,7 @@ # ocda-lib, in Gleam -The abstraction's model and both its loaders, as a Gleam library, and the -two programs that put it to the question. +The abstraction's model and both its loaders, as a Gleam library, with its +reader and the two programs that put it to the question. | | | |---|---| @@ -9,7 +9,10 @@ two programs that put it to the question. | `ocda/load_ssp` | text -> model | | `ocda/load_db` | sqlite -> model | | `ocda/load` | what a path is, and loading it | +| `ocda/inventory` | what a file holds beyond the one document: its languages, and what a `.ocda.db` carries | | `ocda/dump` | the model written out canonically, as an oracle | +| `read/main` | `ocda-read`, the reader | +| `ocda_ffi.erl` | a sha256, from OTP's crypto, which the standard library lacks | ## Use @@ -27,6 +30,23 @@ case load.load(path, "en", False) { } ``` +## The reader + +```sh +nix build +./result/bin/ocda-read [--tree|--outline|--languages|--files|--report-unknown] + <file>.ssp|<file>.ocda.db|<file>.zip [lang] +``` + +`ocda-lib read`, installed also as `ocda-read`. The modes the Gleam readers +had, over the library, so each reads every form this library reads; the +others are the D reader's. **Its output is the D `ocda-read`'s, byte for +byte**, in every mode both have. In `src/read/`, because Gleam compiles +nothing outside `src/`; a program depending on the library compiles it too, +and does not use it. + +A `.sisupod` it refuses, saying why: the zstd frame, below. + ## The two programs ```sh |
