aboutsummaryrefslogtreecommitdiff
path: root/dc.bqn
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2020-07-04 15:46:33 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2020-07-04 17:57:44 -0400
commitccfb8597dcecedb659a4cdc357dc860d190ac78d (patch)
tree04ec241e6a231660b30a1514ee4b4f1440d1c88a /dc.bqn
parent5581b5cdb0a32c033bf55706b1381716f7e574e3 (diff)
Use little-endian base/encode
Diffstat (limited to 'dc.bqn')
-rwxr-xr-xdc.bqn14
1 files changed, 7 insertions, 7 deletions
diff --git a/dc.bqn b/dc.bqn
index c1011c3e..fb3aa8fe 100755
--- a/dc.bqn
+++ b/dc.bqn
@@ -1,8 +1,5 @@
⍝ Run with spec/dzref
-Base←{+⟜(𝕨⊸×)´⌽𝕩}
-Enc2←{𝕨⥊2(|∾˜(𝕨-1)Enc2⌊∘÷˜)⍟(0<𝕨)𝕩}
-
nl‿tab←•UCS 10‿9
charSet←∾charGroups←⟨
chF←"+-×÷⋆√⌊⌈|¬∧∨<>≠=≤≥≡≢⊣⊢⥊∾≍↑↓↕⌽⍉/⍋⍒⊏⊑⊐⊒∊⍷⊔" ⍝ Function
@@ -52,13 +49,16 @@ Parse←{
sel⊸⊏¨𝕩‿na
}
-Hex←16 Base (•d∾"ABCDEF")⊸⊐
+Base←{+⟜(𝕨⊸×)´𝕩}
+Enc2←{2|⌊∘÷⟜2⍟(↕𝕨)𝕩}
+
+Hex←16 Base⟜⌽ (•d∾"ABCDEF")⊸⊐
-ReadNum←10 Base bD⊸⊐
+ReadNum←10 Base⟜⌽ bD⊸⊐
GenF64←{
0:8⥊0;
l←2(⌊⋆⁼)𝕩
- (Hex"44")∾2 Base˘⌽8‿8(⊣⥊×´⊸↑)∾⟨⥊0,11 Enc2 1023+l,(0⌈l)Enc2𝕩⟩
+ (Hex"44")∾2 Base˘8‿8⥊∾⟨¯52↑(0⌈l)Enc2𝕩,11 Enc2 1023+l,⥊0⟩
}
MakeTab←{{⊑∘(∾⟜0)¨¯1↓(chF⊐𝕨)⊔○(∾⟜(≠chF))𝕩}○∾⟜(⥊¨∘⥊¨)´<˘⍉(2(÷˜∾⊣)≢)⊸⥊𝕩}
tab1←MakeTab⟨
@@ -92,7 +92,7 @@ GenFn←{
}
Gen←{
- LEB←{0:⥊0;(0∾˜128⥊˜1-˜≠)⊸+ 2 Base<˘ ⌽⍉ (⌽·∨`·⌽∨´˘)⊸/ 10‿7(⊣⥊×´⊸↑) ⌽64 Enc2 𝕩}
+ LEB←{0:⥊0;128⊸+⌾(¯1⊸↓) 2 Base˘ (⌽·∨`·⌽∨´˘)⊸/ 10‿7(⊣⥊×´⊸↑) 64 Enc2 𝕩}
C←LEB∘≠⊸∾
S←∾⟜C
V←≠∾∾