aboutsummaryrefslogtreecommitdiff
path: root/implementation/README.md
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2021-07-19 14:23:42 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2021-07-19 14:23:42 -0400
commit4c397e48db4ee4b0a53d58aa4d1c8288341ab161 (patch)
tree139f6f3bbbd3bd3e99aa660a643fd52884235dba /implementation/README.md
parent7c191728085439b8507f067f146809607054b5c8 (diff)
Link to primitive and compiler directories in the implementation README
Diffstat (limited to 'implementation/README.md')
-rw-r--r--implementation/README.md2
1 files changed, 2 insertions, 0 deletions
diff --git a/implementation/README.md b/implementation/README.md
index 223b0734..2c9ae9c7 100644
--- a/implementation/README.md
+++ b/implementation/README.md
@@ -6,6 +6,8 @@ Notes about how BQN is implemented. There's not too much here yet.
- [Comparison to Co-dfns](codfns.md) discusses the general compilation strategy and how it compares to the only other array-based compiler.
- [The BQN virtual machine and runtime](vm.md) describes the non-self-hosted parts of the BQN implementation, that is, everything you need to port it to a new platform.
+- [Notes on implementing primitives](primitive/README.md)
+- [Notes on compilation](compile/README.md)
This repository's BQN implementation is written mainly in BQN: the bytecode [compiler](../src/c.bqn) is completely self-hosted, and the majority of the runtime ([r0](../src/r0.bqn), [r1](../src/r1.bqn)) is written in BQN except that it is allowed to define primitives; some preprocessing turns the primitives into identifiers. The remaining part, a VM, can be implemented in any language to obtain a version of BQN running in that language.