aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2021-04-29 13:37:28 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2021-04-29 13:37:28 -0400
commitc0fbd3c6877eb270b957dde5622e0fc5d84595fa (patch)
tree8de7ca69209716f680e4675faf7f3544bcd9c198 /src
parent9ebe3bcdc963a47fa80606942f252ec5464cf911 (diff)
Fix up references to r.bqn
Diffstat (limited to 'src')
-rw-r--r--src/README.txt31
1 files changed, 24 insertions, 7 deletions
diff --git a/src/README.txt b/src/README.txt
index 2881a572..5b2f659b 100644
--- a/src/README.txt
+++ b/src/README.txt
@@ -1,15 +1,32 @@
Documentation for BQN's implementation is at ../implementation/.
-BQN sources for BQN. Object code obtained from these sources is run with
-a VM to obtain a BQN implementation. This is done in Javascript in
-../docs/bqn.js and ../docs/repl.js.
+BQN sources for BQN. Object code from these is run with a VM to obtain a
+BQN implementation. The Javascript VM is ../docs/bqn.js.
+
+Compiler toolchain:
+
+- glyphs.bqn Glyphs for all BQN primitives
+- c.bqn Compiler
+- pp.bqn General preprocessing
+- pr.bqn Preprocess the runtime
+- cjs.bqn Format compiler output as Javascript literals
+
+Compilation targets:
- c.bqn Compiler
-- r.bqn Runtime
+- r0.bqn, r1.bqn Runtime
- f.bqn Formatter
- e.bqn Expression syntax explainer
+- p.bqn Plot generator
+
+Since it defines primitives, the runtime is only sort of BQN. This is
+why pr.bqn is required to process it. It's also compiled with a custom
+primitive set.
-Helper code used to obtain Javascript-formatted object code:
+e.bqn and p.bqn also require the definitions from svg.bqn; they are
+attached cjs.bqn.
-- pr.bqn Preprocess the runtime
-- cjs.bqn Format compiler output as Javascript literals
+Some of these files are also used elsewhere: pp.bqn preprocesses other
+primitive-defining code in ../test/ref.bqn and ../dzref, and f.bqn is
+used to format results in markdown while e.bqn generates diagrams for
+the tutorials.