From 7e86736d2b312324658c496a85f8b517569c3cb4 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Mon, 13 Jun 2022 18:21:04 -0400 Subject: Fuse merge instruction with array-forming instructions so there are 4 total --- src/c.bqn | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/c.bqn b/src/c.bqn index f76d4721..316617e5 100644 --- a/src/c.bqn +++ b/src/c.bqn @@ -234,7 +234,8 @@ Parse ← {r‿vn‿i‿e‿def←𝕨⋄nv←≠vn # Prep for lexical resolution before reordering 𝕩 xv←𝕩-vi {i↩(𝕨⊏i)⌾(𝕩⊸⊏)i⋄e↩(𝕩⊏e)⌾(𝕨⊸⊏)e}´bp # Highlight all contents of a pair when error reporting - 𝕩⊏˜↩g⋄hg←g⊏hf⋄r⊏˜↩gr⋄ir⊏˜↩gr⋄l↩(l⊏⍋gs)∾/gr⊏sr>sl + 𝕩⊏˜↩g⋄hg←g⊏hf⋄r⊏˜↩gr⋄ir⊏˜↩gr⋄l↩(l0←l⊏⍋gs)∾/gr⊏sr>sl + lm←(0¨sll)∾˜(5+⊑bB)-˜l0⊏𝕩 # List merge, adding 2 for [] # Parsing part 1 a←(¯5⊸<∧≤⟜¯3)r⋄ps←a(2=ne)∨ls∨»r=¯5⋄rt←/fo # Drop (block separator) and return qp←/𝕩=pred # Predicate fl←(dy×⊏⟜os)⊸+fa+dy # Function application site @@ -324,11 +324,11 @@ Parse ← {r‿vn‿i‿e‿def←𝕨⋄nv←≠vn # Object code generation: numbers oc ordered by source location (after rev) oi ao←48+(0⌈(1+⊑bG)-˜ai⊏𝕩+ma+mm)∾-hd # Assignment opcode - or←⍋oi←idor∾g⊏˜∾oil←⟨cn,cn,bk,bk,hq,api,2/l,lm,at,dr,qp,al+1,al+1,oa+1⌈oa⊏os,fl,rt⟩ - oc←or⊏∾idoc∾⟨0¨cn,ob,1¨bk,1+↕≠bk,43¨hq,44¨api,⥊⍉(11+l⊏aa)≍ll,14¨lm,ao,6¨dr,42¨qp,66¨al,vi-˜(al-1)⊏𝕩 + or←⍋oi←idor∾g⊏˜∾oil←⟨cn,cn,bk,bk,hq,api,2/l,at,dr,qp,al+1,al+1,oa+1⌈oa⊏os,fl,rt⟩ + oc←or⊏∾idoc∾⟨0¨cn,ob,1¨bk,1+↕≠bk,43¨hq,44¨api,⥊⍉(11+lm+l⊏aa)≍ll,ao,6¨dr,42¨qp,66¨al,vi-˜(al-1)⊏𝕩 24+oa⊏r,16+(fn/dy+2×fm⌈1=ny)+4×0