aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2021-08-16 19:45:59 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2021-08-16 20:27:44 -0400
commit0a594027db299c37740726e282bfd513c8e1fa2b (patch)
tree6472e72ba68c36e33da6c810b91ae868a4ce724f /src
parent7b26c3a970c8df20d780352b02d39fb46f0ae056 (diff)
Fix behavior of ⚇, ˘, and pervasion when matching array to non-data atom
Diffstat (limited to 'src')
-rw-r--r--src/r1.bqn8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/r1.bqn b/src/r1.bqn
index b90b71b7..d9a9c243 100644
--- a/src/r1.bqn
+++ b/src/r1.bqn
@@ -64,7 +64,7 @@ _eachd←{
_perv←{ # Pervasion
R←+○IsArray◶⟨
𝔽
- {R⌜𝕩}⊘(>○IsArray◶{𝕨⊸R⌜𝕩}‿{R⟜𝕩⌜𝕨}) _fillBy_ {𝕨R𝕩}
+ {R⌜𝕩}⊘(>○IsArray◶{𝕨˙⊸R⌜𝕩}‿{R⟜(𝕩˙)⌜𝕨}) _fillBy_ {𝕨R𝕩}
{𝕨R _eachd𝕩} _fillBy_ {𝕨R𝕩}
}
@@ -590,7 +590,7 @@ EncCell ← {
_cells ← {
F←𝔽 ⋄ _m←{𝔽⌜⊘(𝔽¨)_fillByPure_𝔽○(1⊸EncCell)}
D←{ "˘: Argument lengths don't agree" ! 𝕩=○≠𝕨 ⋄ 𝕨 F _m 𝕩 }
- Merge 𝕨 2⊸×⊸+○(0<=)◶⟨<F,{𝕨⊸F _m𝕩},{F⟜𝕩_m𝕨},D⟩ 𝕩
+ Merge 𝕨 2⊸×⊸+○(0<=)◶⟨<F,{𝕨˙⊸F _m𝕩},{F⟜(𝕩˙)_m𝕨},D⟩ 𝕩
}
_insert←{
"˝: 𝕩 must have rank at least 1" ! 1≤=𝕩
@@ -665,14 +665,14 @@ ValidateRanks←{
}
_ranks ← {⟨2⟩⊘⟨1,0⟩ ValidateRanks 𝔽}
_depthOp_←{
- neg←0⊸>⌜n←𝕨𝔾_ranks𝕩 ⋄ F←𝔽
+ neg←0⊸>⌜n←𝕨𝔾_ranks𝕩 ⋄ F←𝔽 ⋄ B←{𝕏}⊘{𝕨˙⊸𝕏}
fb←((3≤Type)◶1‿IsPure𝕗)⊑{𝕘⋄𝔽}‿{𝔽_fillBy_𝔾}
_tf←{𝕗⌜_fb_𝕗} ⋄ _ef←{𝕗_eachd _fb_ 𝕗}
_d←{
r←0 ⋄ GR←𝕗{𝕩⋄gr↩0⋄R↩(𝕗+¨neg)_d}
Tw‿Tx←⟨0⟩⊸∾⍟(2>≠)neg{(𝕨×0≤𝕩)⊑⟨(0⌈𝕩)<≡,0⟩}¨𝕗
(2×Tw)⊸+⟜Tx◶⟨
- F, {GR 0⋄(𝕨R⊢)_tf𝕩}, {GR 0⋄R⟜𝕩_tf𝕨}, {GR 0⋄𝕨R _ef𝕩}
+ F, {GR 0⋄(𝕨 B r)_tf𝕩}, {GR 0⋄R⟜(𝕩˙)_tf𝕨}, {GR 0⋄𝕨R _ef𝕩}
}
𝕨 n _d 𝕩