aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/lux/data/coll/array.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/lux/data/coll/array.lux')
-rw-r--r--stdlib/source/lux/data/coll/array.lux52
1 files changed, 26 insertions, 26 deletions
diff --git a/stdlib/source/lux/data/coll/array.lux b/stdlib/source/lux/data/coll/array.lux
index c697e5681..1eeb1342c 100644
--- a/stdlib/source/lux/data/coll/array.lux
+++ b/stdlib/source/lux/data/coll/array.lux
@@ -34,17 +34,17 @@
(def: #export (copy length src-start src-array dest-start dest-array)
(All [a] (-> Nat Nat (Array a) Nat (Array a)
(Array a)))
- (if (n.= +0 length)
+ (if (n/= +0 length)
dest-array
(list/fold (function [offset target]
- (case (read (n.+ offset src-start) src-array)
+ (case (read (n/+ offset src-start) src-array)
#;None
target
(#;Some value)
- (write (n.+ offset dest-start) value target)))
+ (write (n/+ offset dest-start) value target)))
dest-array
- (list;n.range +0 (n.dec length)))))
+ (list;n/range +0 (n/dec length)))))
(def: #export (occupied array)
{#;doc "Finds out how many cells in an array are occupied."}
@@ -55,14 +55,14 @@
count
(#;Some _)
- (n.inc count)))
+ (n/inc count)))
+0
(list;indices (size array))))
(def: #export (vacant array)
{#;doc "Finds out how many cells in an array are vacant."}
(All [a] (-> (Array a) Nat))
- (n.- (occupied array) (size array)))
+ (n/- (occupied array) (size array)))
(def: #export (filter p xs)
(All [a]
@@ -97,15 +97,15 @@
(-> (-> a Bool) (Array a) (Maybe a)))
(let [arr-size (size xs)]
(loop [idx +0]
- (if (n.< arr-size idx)
+ (if (n/< arr-size idx)
(case (read idx xs)
#;None
- (recur (n.inc idx))
+ (recur (n/inc idx))
(#;Some x)
(if (p x)
(#;Some x)
- (recur (n.inc idx))))
+ (recur (n/inc idx))))
#;None))))
(def: #export (find+ p xs)
@@ -114,15 +114,15 @@
(-> (-> Nat a Bool) (Array a) (Maybe [Nat a])))
(let [arr-size (size xs)]
(loop [idx +0]
- (if (n.< arr-size idx)
+ (if (n/< arr-size idx)
(case (read idx xs)
#;None
- (recur (n.inc idx))
+ (recur (n/inc idx))
(#;Some x)
(if (p idx x)
(#;Some [idx x])
- (recur (n.inc idx))))
+ (recur (n/inc idx))))
#;None))))
(def: #export (clone xs)
@@ -141,19 +141,19 @@
(def: #export (from-list xs)
(All [a] (-> (List a) (Array a)))
(product;right (list/fold (function [x [idx arr]]
- [(n.inc idx) (write idx x arr)])
+ [(n/inc idx) (write idx x arr)])
[+0 (new (list;size xs))]
xs)))
-(def: underflow Nat (n.dec +0))
+(def: underflow Nat (n/dec +0))
(def: #export (to-list array)
(All [a] (-> (Array a) (List a)))
- (loop [idx (n.dec (size array))
+ (loop [idx (n/dec (size array))
output #;Nil]
- (if (n.= underflow idx)
+ (if (n/= underflow idx)
output
- (recur (n.dec idx)
+ (recur (n/dec idx)
(case (read idx array)
(#;Some head)
(#;Cons head output)
@@ -166,7 +166,7 @@
(def: (= xs ys)
(let [sxs (size xs)
sxy (size ys)]
- (and (n.= sxy sxs)
+ (and (n/= sxy sxs)
(list/fold (function [idx prev]
(and prev
(case [(read idx xs) (read idx ys)]
@@ -179,7 +179,7 @@
_
false)))
true
- (list;n.range +0 (n.dec sxs)))))
+ (list;n/range +0 (n/dec sxs)))))
))
(struct: #export Monoid<Array> (All [a]
@@ -189,14 +189,14 @@
(def: (compose xs ys)
(let [sxs (size xs)
sxy (size ys)]
- (|> (new (n.+ sxy sxs))
+ (|> (new (n/+ sxy sxs))
(copy sxs +0 xs +0)
(copy sxy +0 ys sxs)))))
(struct: #export _ (Functor Array)
(def: (map f ma)
(let [arr-size (size ma)]
- (if (n.= +0 arr-size)
+ (if (n/= +0 arr-size)
(new arr-size)
(list/fold (: (-> Nat (Array ($ +1)) (Array ($ +1)))
(function [idx mb]
@@ -207,7 +207,7 @@
(#;Some x)
(write idx (f x) mb))))
(new arr-size)
- (list;n.range +0 (n.dec arr-size)))
+ (list;n/range +0 (n/dec arr-size)))
## (list/fold (function [idx mb]
## (case (read idx ma)
## #;None
@@ -216,7 +216,7 @@
## (#;Some x)
## (write idx (f x) mb)))
## (new arr-size)
- ## (list;n.range +0 (n.dec arr-size)))
+ ## (list;n/range +0 (n/dec arr-size)))
))))
(struct: #export _ (Fold Array)
@@ -224,11 +224,11 @@
(let [arr-size (size xs)]
(loop [so-far init
idx +0]
- (if (n.< arr-size idx)
+ (if (n/< arr-size idx)
(case (read idx xs)
#;None
- (recur so-far (n.inc idx))
+ (recur so-far (n/inc idx))
(#;Some value)
- (recur (f value so-far) (n.inc idx)))
+ (recur (f value so-far) (n/inc idx)))
so-far)))))