From dfe95f4432507fcc11e85e080777e11638acdd20 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Sat, 11 Jul 2020 20:44:59 -0400 Subject: One-line expression reversing --- dc.bqn | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/dc.bqn b/dc.bqn index 356d8703..b7819f11 100755 --- a/dc.bqn +++ b/dc.bqn @@ -126,18 +126,11 @@ Compile←{ # Targetting dzaima/BQN bytecode: -RevE←{ - p‿g←𝕨⋄q←g⊏p⋄b←q>0⋄e←q<0 - l←1+-⟜(b/g)⌾(e/⊢)e×g - ps←b∨g⊏(𝕩∊bS) - sl←-⟜(≠↑0∾⊢)(ps∾1)/+`l∾1 - PL←{sl⌾(𝕩⊸/)0¨𝕩} - ⍋+`(¯1↓⍋0∾1+g)⊏1+(1(∾+○PL∾˜)ps)-1(∾+∾˜)l -} DParse ← {nv‿r𝕊𝕩: g←⍋+`p←bB(⊣(≠⊸>ׯ1⋆2|⊢)⊐)𝕩 r+↩(𝕩=1⊑bB)(⊣∧¬⊸∨=○(⌈`(1+↕∘≠)⊸×)⊢)(¯1⊸⌽⌾(g⊸⊏)3=r)∨1≤r - rev←p‿g RevE𝕩⋄g↩⍋+`rev⊏p + rev←⍋+`(¯1↓⍋¯1∾g)⊏1+-○(⊏⟜(¯1∾g))⟜⍋⍋(∾⟜1-˜0∾+`)g⊏(p>0)∨𝕩∊bS + g↩⍋+`rev⊏p gr←g⊏rev⋄𝕩⊏˜↩gr⋄r⊏˜↩gr⋄o←gr⊏p>0 s←𝕩∊bS⋄ps←s∨o⋄a←𝕩∊2↑bG r-↩ps∨a⋄op←r≥2⋄ro←op∨1⌽r=3 -- cgit v1.2.3