aboutsummaryrefslogtreecommitdiff
path: root/src/bootstrap/verify.bqn
diff options
context:
space:
mode:
Diffstat (limited to 'src/bootstrap/verify.bqn')
-rw-r--r--src/bootstrap/verify.bqn14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/bootstrap/verify.bqn b/src/bootstrap/verify.bqn
new file mode 100644
index 00000000..66939576
--- /dev/null
+++ b/src/bootstrap/verify.bqn
@@ -0,0 +1,14 @@
+glyphs ← •Import "../glyphs.bqn"
+gl ← ("⟨"∾"⟩"«∾","⊸∾¨'"'(⊣∾∾˜)¨glyphs) # Has to replace •args in c.bqn
+
+f ← "../c.bqn"‿"boot1.bqn"‿"boot2.bqn" # Files to test
+c ← (1‿2/⟨glyphs⊸•Import,•Import⟩) {𝕎𝕩}¨ f # Resulting compilers
+c ↩ (∾glyphs){𝕗⊸𝕏}¨ c
+t ← (∾∾⟜(@+10)¨)¨ (¯5⊸↓∾gl˙)⌾⊑⌾⊑ •FLines¨ f # Compiler source
+
+# 4⊸↑ to strip source info
+# ⋈⁼∘∾⍟=¨⌾(2⊑¨2⊸⊑) to turn only-dyadic functions to ambivalent
+! ≡○(4⊸↑)´ (2↑c) {𝕎𝕩}¨ ⊏t
+•Out "Boot -1 verified!"
+! ≡○(⋈⁼∘∾⍟=¨⌾(2⊑¨2⊸⊑) 4⊸↑)´ (0‿2⊏c) {𝕎𝕩}¨ 1⊏t
+•Out "Boot -2 verified!"