diff options
| -rw-r--r-- | src/c.bqn | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -121,11 +121,11 @@ Parse ← {r‿nv←𝕨 𝕩⊏˜↩rev⋄bv←rev⊏br⋄b←/bv<0⋄fi←+`c←bv>0 H←¬1(∾/∾˜)c(∨/⊣)= - ft←(1⊸H+2×2⊸H⌈2×3⊸H)(0‿3‿4‿5+5+⊑bI)⍋𝕩 - "Special name outside of any block" ! 0=⊑ft - fsc←ft⊏⥊3‿5‿6-⌜3‿0 - pt←cp∧sn←¬sl∨sr - r↩sl-˜sn×((1↓ft)⊏(1+2⊸≤)⊸/↕4)⌾((b⊏rev)⊸⊏)r + sn←(0‿3‿4‿5+5+⊑bI)⍋𝕩⋄fx←1 H sn⋄fr←(fx∨0⊸<)⊸+ft←(2⊸H⌈2×3⊸H)sn + "Special name outside of any block" ! 0=⊑fr + fsc←(ft⊏0‿2‿3)+3×fx + pt←cp∧ns←¬sl∨sr + r↩sl-˜ns×(1↓fr)⌾((b⊏rev)⊸⊏)r pp←pt∧»no←1⊸»⌾(g⊸⊏)r<0 ir←((»⌾(g⊸⊏)(1+no)×3=⊢)⌈⊢-no<2≤⊢)r+pp×(IT¬pp)⊏r ir⌈↩(IT¬pt∧ir=0)((⊏-⊢)⟜(+`¬pp)(⊢⌊1⌈+)⊏)ir @@ -160,7 +160,7 @@ Parse ← {r‿nv←𝕨 ig↩<⟜(≠id)⊸/(⍋+`∘⊏⟜(d∾-/˜d))⊸⊏ig d⊏˜↩ig⋄ErrUndeclared∘/˜⍟(0∨´⊢)⟜(d<»⊸≠)ig⊏idx ui←(IT d)⊸⊏⌾(ig⊸⊏)id - ii←(ui⊏(fi⊏fsc)-c⊸T⊸¬+`dec)∾((sp⊏fi)⊏3×2|ft)++⟜(0⊸≤)2+sp⊏xv + ii←(ui⊏(fi⊏fsc)-c⊸T⊸¬+`dec)∾((sp⊏fi)⊏3×fx)++⟜(0⊸≤)2+sp⊏xv idor←∾3⥊<is←id∾sp idbc←⟨21+is⊏asn,(id-○(⊏⟜fd)ui)∾0¨sp,ii⟩ @@ -169,7 +169,7 @@ Parse ← {r‿nv←𝕨 bc←or⊏∾idbc∾⟨0¨cn,ob,15¨b,1+↕≠b,14¨dr,3+l⊏aa,ll,3+si⊏aa,sll (11-⊑bG)+a/ma+𝕩,5+oa⊏r,(⊢+9×10⊸=)16+dy-7×fa⊏er,25¨rt⟩ bcl‿el←LEB bc∾25 - fs←(ft⊏⥊3≍⌜⟜⌽○↕2)∾¨(el/˜1∾or≥bc-○≠rt)≍¨lc+fsc + fs←(ft≍¨¬fx)∾¨(el/˜1∾or≥bc-○≠rt)≍¨lc+fsc ⟨bcl,u,fs⟩ } |
