aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/r1.bqn19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/r1.bqn b/src/r1.bqn
index 2a6b83d9..df7f888f 100644
--- a/src/r1.bqn
+++ b/src/r1.bqn
@@ -497,18 +497,19 @@ structFn ← {
_errIf←{⊢⊘×○(1-𝔽)◶⟨StructErr˙,𝕏⟩}
SE ← IsStructErr _errIf⍟(3≥Type)
- _sfn_ ← {(𝕎⊢)◶⟨𝕏, 𝕩‿𝕗‿𝕘{𝕨𝕏𝕗}⟩}
- Mon←{𝕏⊘E} ⋄ Dy←{E⊘𝕏}
+ _amb_ ← {(𝕎⊢)◶⟨𝕏, 𝕩‿𝕗‿𝕘{𝕨𝕏𝕗}⟩}
+ _mon_ ← {(𝕨𝕗_amb_𝕘𝕩)⊘(𝕎_errIf𝕩)}
+ _dy_ ← {(𝕎_errIf𝕩)⊘(𝕨𝕗_amb_𝕘𝕩)}
k‿v ← Split2 ⟨
"⊢⊣˜∘○⊸⟜⊘◶", ⊢ # ˙ handled specially
"´˝", {r←𝕩⋄{IsArray∘⊢◶⟨E,𝕗_r⟩}}
- "=≠≢", Mon 1 _sfn_ 0
- "<", Mon 0 _sfn_ 1
- "≍", Mon 1 _sfn_ 1 # Dyad combines
- "↕/»«⊔", Dy 1 _sfn_ 1
- "⥊↑↓⌽⍉⊏⊑", 1 _sfn_ 1
- # ">", Mon 2 _sfn_ 1
- # "∾", Mon 2 _sfn_ 1 # Dyad combines
+ "=≠≢", 1 _mon_ 0
+ "<", 0 _mon_ 1
+ "≍", 1 _mon_ 1 # Dyad combines
+ "↕/»«⊔", 1 _dy_ 1
+ "⥊↑↓⌽⍉⊏⊑", 1 _amb_ 1
+ # ">", 2 _mon_ 1
+ # "∾", 2 _mon_ 1 # Dyad combines
# "˘⎉¨⌜",
# "⚇",