aboutsummaryrefslogtreecommitdiff
path: root/docs/implementation/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/implementation/index.html')
-rw-r--r--docs/implementation/index.html2
1 files changed, 1 insertions, 1 deletions
diff --git a/docs/implementation/index.html b/docs/implementation/index.html
index d0b73c59..8e46bc35 100644
--- a/docs/implementation/index.html
+++ b/docs/implementation/index.html
@@ -4,7 +4,7 @@
<title>BQN implementation notes</title>
</head>
<div class="nav">(<a href="https://github.com/mlochbaum/BQN">github</a>) / <a href="../index.html">BQN</a></div>
-<h1 id="bqn-implementation-notes">BQN implementation notes</h1>
+<h1 id="bqn-implementation-notes"><a class="header" href="#bqn-implementation-notes">BQN implementation notes</a></h1>
<p>Notes about how BQN is or could be implemented.</p>
<p>This repository's BQN implementation is written mainly in BQN: the bytecode <a href="https://github.com/mlochbaum/BQN/blob/master/implementation/../src/c.bqn">compiler</a> is completely self-hosted, and the majority of the runtime (<a href="https://github.com/mlochbaum/BQN/blob/master/implementation/../src/r0.bqn">r0</a>, <a href="https://github.com/mlochbaum/BQN/blob/master/implementation/../src/r1.bqn">r1</a>) is written in BQN except that it is allowed to define primitives; some preprocessing (<a href="https://github.com/mlochbaum/BQN/blob/master/implementation/../src/pr.bqn">pr</a>) turns the primitives into identifiers.</p>
<p>The remaining part, a Virtual Machine (VM), can be implemented in any language to obtain a version of BQN running in that language. The VM used for the online REPL is the <a href="https://github.com/mlochbaum/BQN/blob/master/implementation/../docs/bqn.js">Javascript implementation</a>, while <a href="https://github.com/dzaima/CBQN">CBQN</a> is a more advanced VM in C. There are platform-specific and generic tests in the <a href="https://github.com/mlochbaum/BQN/blob/master/implementation/../test/">test</a> directory.</p>