From 666ad23844be33141f7c986de3b83f035db4b95a Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Mon, 15 Feb 2021 17:51:17 -0500 Subject: Reference implementation and commentary for Group length extension --- spec/reference.bqn | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'spec/reference.bqn') diff --git a/spec/reference.bqn b/spec/reference.bqn index 288fdc39..988bfb51 100644 --- a/spec/reference.bqn +++ b/spec/reference.bqn @@ -383,11 +383,16 @@ Group←{ 𝕨↩Pair∘ToArray⍟(2>≡)𝕨 ! 1==𝕨 {!∧´Int¨𝕩⋄!∧´¯1≤𝕩}∘⥊¨𝕨 - n←+´=¨𝕨 + n←+´r←=¨𝕨 ! n≤=𝕩 - ! (∾≢⌜𝕨)≡n↑≢𝕩 - 𝕨↩⥊¨𝕨 ⋄ 𝕩↩((≠¨𝕨)∾n↓≢𝕩)⥊𝕩 - (𝕨⊸=/𝕩˙)¨↕1+¯1⌈´¨𝕨 + ld←(∾≢⌜𝕨)-n↑≢𝕩 + ! ∧´(0⊸≤∧≤⟜(r/1=r))ld + dr←r⌊(0»+`r)⊏ld∾⟨0⟩ + s←dr⊣◶⟨0,¯1⊸⊑⟩¨𝕨 + 𝕨↩dr(⥊¯1⊸↓⍟⊣)¨𝕨 + s⌈↩1+¯1⌈´¨𝕨 + 𝕩↩((≠¨𝕨)∾n↓≢𝕩)⥊𝕩 + (𝕨⊸=/𝕩˙)¨↕s } GroupInds←{ ! 1==𝕩 -- cgit v1.2.3