diff options
| author | Marshall Lochbaum <mwlochbaum@gmail.com> | 2020-08-04 17:54:38 -0400 |
|---|---|---|
| committer | Marshall Lochbaum <mwlochbaum@gmail.com> | 2020-08-04 19:11:46 -0400 |
| commit | 00a4a96a72a5c23329b4f70819451edc6258bfa1 (patch) | |
| tree | 5df60b61df88cb62ed1769cd0a75cb336b0fa1a9 | |
| parent | 7fe1ddad0fff7c2952cc98c1d0f8a4c263ead0fa (diff) | |
Faster singleton-cell comparison for ⍋⍒
| -rw-r--r-- | impl.bqn | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -352,15 +352,14 @@ _cmpLen ← { } _getCellCmp ← { Ci←𝔽⋄l←𝕨⋄c←𝕩 - { + Cc←{ a←𝕨⋄b←𝕩 S←(l⊸=)◶{S∘(1+𝕩)⍟(0⊸=)a Ci○(𝕩⊸+)b}‿c S 0 } + (1≠l)⊑(𝕩⍟(0⊸=)𝔽)‿Cc } -Cmp ← ∨○IsArray◶{ # No arrays - 𝕨(>-<)𝕩 # Assume they're numbers -}‿{ # At least one array +Cmp ← ∨○IsArray◶(>-<)‿{ lc←𝕨(𝕨-○IsArray𝕩)_cmpLen○≢𝕩 cc ← (⊑⟜(⥊𝕨))⊸Cmp⟜(⊑⟜(⥊𝕩)) _getCellCmp´ lc Cc˜0 |
