diff options
| author | Marshall Lochbaum <mwlochbaum@gmail.com> | 2020-07-26 08:15:37 -0400 |
|---|---|---|
| committer | Marshall Lochbaum <mwlochbaum@gmail.com> | 2020-07-26 08:16:16 -0400 |
| commit | 3440cca7fa1f95fd5649a8a597b5ce6bddd3d68c (patch) | |
| tree | 83d005543f43f520be5ae460cbfd50aa15eadffa | |
| parent | 59f86b7d26ee10ba84e778a6477fcda83724057a (diff) | |
Use a simple boolean version of Repeat
| -rwxr-xr-x | dzref_full | 38 |
1 files changed, 20 insertions, 18 deletions
@@ -14,6 +14,7 @@ impl β "βΆ β {π¨((π¨π½π©)βπ){π½}π©} # LIMITED to numbe β β {(πΎπ¨)π½πΎπ©} βΈ β {(π½π¨β£π©)πΎπ©} β β {(π¨β£π©)π½πΎπ©} +β β {π¨((π¨πΎπ©)ββ’βΏπ){π½}π©} # LIMITED to boolean right operand result # LIMITED to numeric arguments for scalar cases β β ββ(Γ·2) β (ββΓ·Λ) @@ -44,7 +45,7 @@ _foldβ{ # After defining _perv, we apply it to all scalar functions, # making them pervasive. I'm not going to write that out. -ToArray β IsArrayβΆ<βΏβ’ +ToArray β <β(Β¬IsArray) βΎ β {kββ π¨βkβΈβ€βΆβ¨ββπ¨β-βkβπ©Λβ©ββk+β π©} # LIMITED to two vector arguments @@ -84,9 +85,9 @@ Reshapeβ{ ! β§Β΄NatΒ¨π¨ lβΓΒ΄π¨ nβΓΒ΄β’π© - π¨β₯(l=n)βΆ{ + π¨β₯{ π©(0<n)βΆβ¨TypeβΈ(β£β)ββ₯βΈ{ββπ¨Β¨n|π©}β©βl - }βΏβ’π© + }β(lβ n)π© }βToArray β₯ β© Deshape β Reshape @@ -120,11 +121,11 @@ DropVβ {ββπ©Β¨π¨+βπ¨-Λβ π©} Cell β DropVββ’ Pair β {β¨π©β©} β {β¨π¨,π©β©} -Mergeβ(0<β ββ₯)βΆβ’βΏ{ +Mergeβ{ cββ’βπ© ! β§Β΄β₯(cβ‘β’)Β¨π© π©βββ₯Λβcβ₯βΓΒ΄c -} +}β(0<β ββ₯) > β© Merge β > β β >βPair _ranks β {β¨2β©ββ¨1,0β©((β£-1+|)Λββ βΒ¨<ββ’)β₯βπ½} @@ -151,25 +152,15 @@ _scanβ{ ! IsArray π© ! 1β€=π© Fβπ½ - (0<β ββ₯)βΆβ’βΏ{ + { rββ₯π© β lββ π© β cβΓΒ΄1 Cell π© {rβ©rπ©_amendΛπ¨Fβ(ββr)π©}β(cβΈ+)Β¨βc-Λβ r (β’π©)β₯r - }π© -} -` β _scan -_repeat_β{ - nβπ¨πΎπ© - fβ0βπ¨β¨π½β©ββ¨π¨π½β’β©π© - lβuβ0 - {!Intπ©βlβ©lβπ©βuβ©uβπ©}β0 n - aβπ©β_pβ{π½ββ£`(1+π©)β₯<a} - posβF _p u β negβFβΌ_p-l - (|β<β0βposβΏnegΛ)β0 n + }β(0<β ββ₯)π© } +` β _scan β β _rankOp_ -β β _repeat_ Λ β βΒ―1 _insertβ{ ! 1β€=π© @@ -370,6 +361,17 @@ ProgressiveIndexOf β {π¨ββ(βΛβOccurrenceCountπ¨βΈβ)π©} β§ β© ββΈβ β β§ β¨ β© ββΈβ β β¨ β β OccurrenceCountβ ProgressiveIndexOf + +_repeat_β{ + nβπ¨πΎπ© + fβ0βπ¨β¨π½β©ββ¨π¨π½β’β©π© + lβuβ0 + {!Intπ©βlβ©lβπ©βuβ©uβπ©}β0 n + aβπ©β_pβ{π½ββ£`(1+π©)β₯<a} + posβF _p u β negβFβΌ_p-l + (|β<β0βposβΏnegΛ)β0 n +} +β β© _repeat_ " XβRawβ{β€4} |
