From f11c10f72d003555d76c9803954e2bd8b347362d Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Wed, 15 Nov 2017 22:30:57 -0400 Subject: - Moved "/type/*" to from "lux/meta/" to "lux/". --- stdlib/test/test/lux/data/format/json.lux | 12 ++--- stdlib/test/test/lux/meta/type/implicit.lux | 38 ------------- stdlib/test/test/lux/meta/type/object.lux | 83 ----------------------------- stdlib/test/test/lux/type/implicit.lux | 38 +++++++++++++ stdlib/test/test/lux/type/object.lux | 83 +++++++++++++++++++++++++++++ stdlib/test/tests.lux | 8 +-- 6 files changed, 131 insertions(+), 131 deletions(-) delete mode 100644 stdlib/test/test/lux/meta/type/implicit.lux delete mode 100644 stdlib/test/test/lux/meta/type/object.lux create mode 100644 stdlib/test/test/lux/type/implicit.lux create mode 100644 stdlib/test/test/lux/type/object.lux (limited to 'stdlib/test') diff --git a/stdlib/test/test/lux/data/format/json.lux b/stdlib/test/test/lux/data/format/json.lux index 91e6bede3..ab18e047f 100644 --- a/stdlib/test/test/lux/data/format/json.lux +++ b/stdlib/test/test/lux/data/format/json.lux @@ -6,9 +6,9 @@ [eq #+ Eq] pipe ["p" parser]) - (data [text "Text/" Monoid] + (data [text] text/format - ["E" error] + ["e" error] [bool] [maybe] [number "i/" Number] @@ -21,8 +21,8 @@ [syntax #+ syntax:] [poly #+ derived:] [poly/eq] - [poly/json] - (type [unit])) + [poly/json]) + (type [unit]) ["r" math/random] (time ["ti" instant] ["tda" date] @@ -170,8 +170,8 @@ (^open "@/") Codec]] (test "Can encode/decode arbitrary types." (|> sample @/encode @/decode - (case> (#E;Success result) + (case> (#e;Success result) (@/= sample result) - (#E;Error error) + (#e;Error error) false)))))) diff --git a/stdlib/test/test/lux/meta/type/implicit.lux b/stdlib/test/test/lux/meta/type/implicit.lux deleted file mode 100644 index 6d2344120..000000000 --- a/stdlib/test/test/lux/meta/type/implicit.lux +++ /dev/null @@ -1,38 +0,0 @@ -(;module: - lux - (lux [io] - (control [monad #+ do Monad] - functor - [eq]) - (data [number] - [bool "bool/" Eq] - maybe - (coll [list])) - ["r" math/random] - (meta type/implicit)) - lux/test) - -(context: "Automatic structure selection" - (<| (times +100) - (do @ - [x r;nat - y r;nat] - ($_ seq - (test "Can automatically select first-order structures." - (let [(^open "list/") (list;Eq number;Eq)] - (and (bool/= (:: number;Eq = x y) - (::: = x y)) - (list/= (list;n.range +1 +10) - (::: map n.inc (list;n.range +0 +9))) - ))) - - (test "Can automatically select second-order structures." - (::: = - (list;n.range +1 +10) - (list;n.range +1 +10))) - - (test "Can automatically select third-order structures." - (let [lln (::: map (list;n.range +1) - (list;n.range +1 +10))] - (::: = lln lln))) - )))) diff --git a/stdlib/test/test/lux/meta/type/object.lux b/stdlib/test/test/lux/meta/type/object.lux deleted file mode 100644 index c6b7d0f80..000000000 --- a/stdlib/test/test/lux/meta/type/object.lux +++ /dev/null @@ -1,83 +0,0 @@ -(;module: - lux - (lux (data (coll [list])) - (meta (type object)))) - -## No parameters -(interface: Counter - (inc [] @) - (read [] Nat)) - -(class: NatC Counter - Nat - - (def: inc - (update@Counter n.inc)) - - (def: read - get@Counter)) - -(interface: Resettable-Counter - #super Counter - (reset [] @)) - -(class: NatRC Resettable-Counter - #super NatC - Unit - - (def: reset - (set@Counter +0))) - -## With parameters -(interface: (Collection a) - (add [a] @) - (size [] Nat)) - -(class: (ListC a) (Collection a) - (List a) - - (def: (add elem) - (update@Collection (|>. (#;Cons elem)))) - - (def: size - (|>. get@Collection list;size))) - -(interface: (Iterable a) - #super (Collection a) - (enumerate [] (List a))) - -(class: (ListI a) (Iterable a) - #super (ListC a) - Unit - - (def: enumerate - get@Collection)) - -## Polymorphism -(def: (poly0 counter) - (-> Counter Nat) - (read counter)) - -(def: poly0-0 Nat (poly0 (new@NatC +0))) -(def: poly0-1 Nat (poly0 (new@NatRC +0 []))) - -(def: (poly1 counter) - (-> Resettable-Counter Nat) - (n.+ (read counter) - (read (reset counter)))) - -(def: poly1-0 Nat (poly1 (new@NatRC +0 []))) - -(def: (poly2 counter) - (-> NatC Nat) - (read counter)) - -(def: poly2-0 Nat (poly2 (new@NatC +0))) -(def: poly2-1 Nat (poly2 (new@NatRC +0 []))) - -(def: (poly3 counter) - (-> NatRC Nat) - (n.+ (read counter) - (read (reset counter)))) - -(def: poly3-0 Nat (poly3 (new@NatRC +0 []))) diff --git a/stdlib/test/test/lux/type/implicit.lux b/stdlib/test/test/lux/type/implicit.lux new file mode 100644 index 000000000..138a16b2e --- /dev/null +++ b/stdlib/test/test/lux/type/implicit.lux @@ -0,0 +1,38 @@ +(;module: + lux + (lux [io] + (control [monad #+ do Monad] + functor + [eq]) + (data [number] + [bool "bool/" Eq] + maybe + (coll [list])) + ["r" math/random] + (type implicit)) + lux/test) + +(context: "Automatic structure selection" + (<| (times +100) + (do @ + [x r;nat + y r;nat] + ($_ seq + (test "Can automatically select first-order structures." + (let [(^open "list/") (list;Eq number;Eq)] + (and (bool/= (:: number;Eq = x y) + (::: = x y)) + (list/= (list;n.range +1 +10) + (::: map n.inc (list;n.range +0 +9))) + ))) + + (test "Can automatically select second-order structures." + (::: = + (list;n.range +1 +10) + (list;n.range +1 +10))) + + (test "Can automatically select third-order structures." + (let [lln (::: map (list;n.range +1) + (list;n.range +1 +10))] + (::: = lln lln))) + )))) diff --git a/stdlib/test/test/lux/type/object.lux b/stdlib/test/test/lux/type/object.lux new file mode 100644 index 000000000..c85ff5770 --- /dev/null +++ b/stdlib/test/test/lux/type/object.lux @@ -0,0 +1,83 @@ +(;module: + lux + (lux (data (coll [list])) + (type object))) + +## No parameters +(interface: Counter + (inc [] @) + (read [] Nat)) + +(class: NatC Counter + Nat + + (def: inc + (update@Counter n.inc)) + + (def: read + get@Counter)) + +(interface: Resettable-Counter + #super Counter + (reset [] @)) + +(class: NatRC Resettable-Counter + #super NatC + Unit + + (def: reset + (set@Counter +0))) + +## With parameters +(interface: (Collection a) + (add [a] @) + (size [] Nat)) + +(class: (ListC a) (Collection a) + (List a) + + (def: (add elem) + (update@Collection (|>. (#;Cons elem)))) + + (def: size + (|>. get@Collection list;size))) + +(interface: (Iterable a) + #super (Collection a) + (enumerate [] (List a))) + +(class: (ListI a) (Iterable a) + #super (ListC a) + Unit + + (def: enumerate + get@Collection)) + +## Polymorphism +(def: (poly0 counter) + (-> Counter Nat) + (read counter)) + +(def: poly0-0 Nat (poly0 (new@NatC +0))) +(def: poly0-1 Nat (poly0 (new@NatRC +0 []))) + +(def: (poly1 counter) + (-> Resettable-Counter Nat) + (n.+ (read counter) + (read (reset counter)))) + +(def: poly1-0 Nat (poly1 (new@NatRC +0 []))) + +(def: (poly2 counter) + (-> NatC Nat) + (read counter)) + +(def: poly2-0 Nat (poly2 (new@NatC +0))) +(def: poly2-1 Nat (poly2 (new@NatRC +0 []))) + +(def: (poly3 counter) + (-> NatRC Nat) + (n.+ (read counter) + (read (reset counter)))) + +(def: poly3-0 Nat (poly3 (new@NatRC +0 []))) diff --git a/stdlib/test/tests.lux b/stdlib/test/tests.lux index 3e1d6b5f3..34f6ef8b0 100644 --- a/stdlib/test/tests.lux +++ b/stdlib/test/tests.lux @@ -65,9 +65,9 @@ (meta ["_;" code] ["_;" syntax] (poly ["poly_;" eq] - ["poly_;" functor]) - (type ["_;" implicit] - ["_;" object])) + ["poly_;" functor])) + (type ["_;" implicit] + ["_;" object]) (lang ["lang_;" syntax] ["_;" type] (type ["_;" check])) @@ -89,7 +89,7 @@ (coll (tree ["tree_;" parser]))) (math [random]) [meta] - (meta (type [unit])) + (type [unit]) [world/env]) ) -- cgit v1.2.3