aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2022-06-01 21:13:40 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2022-06-01 21:13:40 -0400
commite17bd6e713427917e6b224e8ecbd862b8223c9ae (patch)
tree780b087fb23023e5fa572eb2a6d01687eb850168
parent16ea00650607ba5affc3b94fe133e69920954aa5 (diff)
Improvements to _table and _scan reference definitions
-rw-r--r--spec/reference.bqn9
1 files changed, 3 insertions, 6 deletions
diff --git a/spec/reference.bqn b/spec/reference.bqn
index 617b88d2..4e9a0a88 100644
--- a/spec/reference.bqn
+++ b/spec/reference.bqn
@@ -103,10 +103,8 @@ ToArray ← IsArray◶<‿⊢
∾ ← {k←≠𝕨⋄k⊸≤◶⟨⊑⟜𝕨⋄-⟜k⊑𝕩˜⟩¨↕k+≠𝕩} # LIMITED to two list arguments
_table←{
- m←≠a←⥊𝕨 ⋄ n←≠b←⥊𝕩 ⋄ F←𝔽
- r←↕m×n
- {𝕩⊸{r↩r((n×𝕨)+𝕩)_amend˜(𝕨⊑a)F(𝕩⊑b)}¨↕n}¨↕m
- (𝕨∾○≢𝕩)⥊r
+ m←≠a←⥊𝕨 ⋄ n←≠b←⥊𝕩 ⋄ F←𝔽 ⋄ i←0
+ (𝕨∾○≢𝕩)⥊{i+↩𝕩=n×i+1⋄(i⊑a)F(𝕩-n×i)⊑b}¨↕m×n
}
_eachd←{
@@ -249,8 +247,7 @@ _scan←{
𝕨 (0<l)◶⊢‿{
c←×´cs
{r↩≥⟜c◶⟨⊑⟜(⥊𝕩)⊸F⋄⊢⟩⟜(⊑⟜r)¨↕l}𝕨
- {r↩r𝕩_amend˜𝕨F○(⊑⟜r)𝕩}⟜(c⊸+)¨↕l-c
- (≢𝕩)⥊r
+ (≢𝕩) ⥊ r {((𝕨-c)F○(⊑⟜𝕩)𝕨)𝕨_amend𝕩}´ (l-1)-↕l-c
} 𝕩
}
_repeat_←{