From 5df3b8b598d507b3e04e1be4cca28c13e706ffef Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Fri, 20 Nov 2020 21:11:00 -0500 Subject: Emit opening and closing positions for instructions --- src/c.bqn | 7 ++++--- src/e.bqn | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/c.bqn b/src/c.bqn index a7dd7a7e..037debfd 100644 --- a/src/c.bqn +++ b/src/c.bqn @@ -190,8 +190,9 @@ Parse ← {r‿vn‿i‿e←𝕨⋄nv←≠vn or←⍋oi←idor∾g⊏˜∾⟨cn,cn,bk,bk,dr,2/l,af/at,oa+1⌈oa⊏os,(dy×⊏⟜os)⊸+fa+dy,rt⟩ bc←or⊏∾idbc∾⟨0¨cn,ob,15¨bk,1+↕≠bk,14¨dr,⥊⍉(3+l⊏aa)≍ll 11⌈(11-1+⊑bG)+(af/ai)⊏ma+𝕩,5+oa⊏r,(⊢+9×10⊸=)16+dy-7×fa⊏er,25¨rt⟩ + oj←i(≠-1˙)⊸⌊oi(-⊸↓˜⟜≠∾⊢)g⊏˜∾⟨1-˜af/at,oa,fa,rt⟩ bcl‿el‿ol←LEB bc∾25 - ⟨bcl,u,⟨ft,¬fx,el/˜1∾or≥bc-○≠rt,lc+fsc⟩, ol/(¯1∾˜or⊏oi)⊏¯1(⊢∾⊏)i⟩ + ⟨bcl,u,⟨ft,¬fx,el/˜1∾or≥bc-○≠rt,lc+fsc⟩, (ol/¯1∾˜or⊏oj)⊸⊏¨i‿e⟩ } LEB←{ @@ -204,6 +205,6 @@ LEB←{ Compile←{ ⟨tok,role,val,t0,t1⟩←tx←Tokenize 𝕩 - ⟨bc,prim,blk,indb⟩←⟨role,⊑val,t0,t1⟩ Parse tok - ⟨bc, ∾⟨prim⊏𝕨⟩∾1↓val, <˘⍉>blk, indb, tx⟩ + ⟨bc,prim,blk,oi⟩←⟨role,⊑val,t0,t1⟩ Parse tok + ⟨bc, ∾⟨prim⊏𝕨⟩∾1↓val, <˘⍉>blk, oi, tx⟩ } diff --git a/src/e.bqn b/src/e.bqn index 5144c902..c242ce9f 100644 --- a/src/e.bqn +++ b/src/e.bqn @@ -37,7 +37,7 @@ hlTag ← {""}¨ hlcl escchars ← """&<>" ⋄ escapes ← ("&"∾∾⟜";")¨"quot"‿"amp"‿"lt"‿"gt" Explain ← { - b‿const‿blk‿i‿tok ← 𝕨 + b‿const‿blk‿(i‿e)‿tok ← 𝕨 ba‿bc‿bo‿bp ← '0'-˜⟨ # For each instruction, number of: "11111000000000010000022000" # Arguments "000//232323223102303200121" # Stack values consumed -- cgit v1.2.3