diff options
Diffstat (limited to 'stdlib/source/specification')
16 files changed, 203 insertions, 201 deletions
diff --git a/stdlib/source/specification/compositor/common.lux b/stdlib/source/specification/compositor/common.lux index f97ca894e..58546822c 100644 --- a/stdlib/source/specification/compositor/common.lux +++ b/stdlib/source/specification/compositor/common.lux @@ -31,7 +31,7 @@ (generation.State+ anchor expression directive) what))) -(def: (runner (^open "[0]") state) +(def: (runner (open "[0]") state) (Instancer Runner) (function (_ evaluation_name expressionS) (do try.monad @@ -42,7 +42,7 @@ (phase expressionS)))] (# host evaluate! evaluation_name expressionG)))) -(def: (definer (^open "[0]") state) +(def: (definer (open "[0]") state) (Instancer Definer) (function (_ lux_name expressionS) (do try.monad diff --git a/stdlib/source/specification/compositor/generation/common.lux b/stdlib/source/specification/compositor/generation/common.lux index 19041bbb7..cf94de3a9 100644 --- a/stdlib/source/specification/compositor/generation/common.lux +++ b/stdlib/source/specification/compositor/generation/common.lux @@ -17,6 +17,8 @@ ["%" format {"+" format}]] [collection ["[0]" list]]] + [macro + ["^" pattern]] [math ["r" random {"+" Random}]] [tool @@ -245,9 +247,9 @@ (synthesis.i64 +0))} (run (..safe "lux text index")) (pipe.case - (^multi {try.#Success valueV} - [(:as (Maybe Nat) valueV) - {.#Some valueV}]) + (^.multi {try.#Success valueV} + [(:as (Maybe Nat) valueV) + {.#Some valueV}]) (n.= 0 valueV) _ @@ -257,9 +259,9 @@ (synthesis.i64 +0))} (run (..safe "lux text index")) (pipe.case - (^multi {try.#Success valueV} - [(:as (Maybe Nat) valueV) - {.#Some valueV}]) + (^.multi {try.#Success valueV} + [(:as (Maybe Nat) valueV) + {.#Some valueV}]) (n.= sample_size valueV) _ @@ -272,9 +274,9 @@ (synthesis.i64 length))} (run (..safe "lux text clip")) (pipe.case - (^multi {try.#Success valueV} - [(:as (Maybe Text) valueV) - {.#Some valueV}]) + (^.multi {try.#Success valueV} + [(:as (Maybe Text) valueV) + {.#Some valueV}]) (text#= expected valueV) _ @@ -288,9 +290,9 @@ (synthesis.i64 char_idx))} (run (..safe "lux text char")) (pipe.case - (^multi {try.#Success valueV} - [(:as (Maybe Int) valueV) - {.#Some valueV}]) + (^.multi {try.#Success valueV} + [(:as (Maybe Int) valueV) + {.#Some valueV}]) (text.contains? ("lux i64 char" valueV) sample_lower) @@ -322,9 +324,9 @@ (list (synthesis.text message))}]))} (run (..safe "lux try")) (pipe.case - (^multi {try.#Success valueV} - [(:as (Try Text) valueV) - {try.#Failure error}]) + (^.multi {try.#Success valueV} + [(:as (Try Text) valueV) + {try.#Failure error}]) (text.contains? message error) _ @@ -336,9 +338,9 @@ synthesis.#body (synthesis.text message)]))} (run (..safe "lux try")) (pipe.case - (^multi {try.#Success valueV} - [(:as (Try Text) valueV) - {try.#Success valueV}]) + (^.multi {try.#Success valueV} + [(:as (Try Text) valueV) + {try.#Success valueV}]) (text#= message valueV) _ diff --git a/stdlib/source/specification/lux/abstract/apply.lux b/stdlib/source/specification/lux/abstract/apply.lux index 3d01a1217..fe61d1a33 100644 --- a/stdlib/source/specification/lux/abstract/apply.lux +++ b/stdlib/source/specification/lux/abstract/apply.lux @@ -15,7 +15,7 @@ [// [functor {"+" Injection Comparison}]]) -(def: (identity injection comparison (^open "/#[0]")) +(def: (identity injection comparison (open "/#[0]")) (All (_ f) (-> (Injection f) (Comparison f) (Apply f) Test)) (do [! random.monad] [sample (# ! each injection random.nat)] @@ -24,7 +24,7 @@ (/#on sample (injection function.identity)) sample)))) -(def: (homomorphism injection comparison (^open "/#[0]")) +(def: (homomorphism injection comparison (open "/#[0]")) (All (_ f) (-> (Injection f) (Comparison f) (Apply f) Test)) (do [! random.monad] [sample random.nat @@ -34,7 +34,7 @@ (/#on (injection sample) (injection increase)) (injection (increase sample)))))) -(def: (interchange injection comparison (^open "/#[0]")) +(def: (interchange injection comparison (open "/#[0]")) (All (_ f) (-> (Injection f) (Comparison f) (Apply f) Test)) (do [! random.monad] [sample random.nat @@ -45,7 +45,7 @@ (/#on (injection increase) (injection (: (-> (-> Nat Nat) Nat) (function (_ f) (f sample))))))))) -(def: (composition injection comparison (^open "/#[0]")) +(def: (composition injection comparison (open "/#[0]")) (All (_ f) (-> (Injection f) (Comparison f) (Apply f) Test)) (:let [:$/1: (-> Nat Nat)] (do [! random.monad] diff --git a/stdlib/source/specification/lux/abstract/codec.lux b/stdlib/source/specification/lux/abstract/codec.lux index c220c8de6..9a39f4b1c 100644 --- a/stdlib/source/specification/lux/abstract/codec.lux +++ b/stdlib/source/specification/lux/abstract/codec.lux @@ -1,19 +1,19 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [monad {"+" do}]] - [control - ["[0]" try]] - [math - ["[0]" random {"+" Random}]]]] - [\\library - ["[0]" / - [// - [equivalence {"+" Equivalence}]]]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [monad {"+" do}]] + [control + ["[0]" try]] + [math + ["[0]" random {"+" Random}]]]] + [\\library + ["[0]" / + [// + [equivalence {"+" Equivalence}]]]]) -(def: .public (spec (^open "@//[0]") (^open "@//[0]") generator) +(def: .public (spec (open "@//[0]") (open "@//[0]") generator) (All (_ m a) (-> (Equivalence a) (/.Codec m a) (Random a) Test)) (do random.monad [expected generator] diff --git a/stdlib/source/specification/lux/abstract/comonad.lux b/stdlib/source/specification/lux/abstract/comonad.lux index 97ccee43e..6147cff90 100644 --- a/stdlib/source/specification/lux/abstract/comonad.lux +++ b/stdlib/source/specification/lux/abstract/comonad.lux @@ -1,19 +1,19 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [monad {"+" do}]] - [math - ["[0]" random] - [number - ["n" nat]]]]] - [\\library - ["[0]" / {"+" CoMonad}]] - [// - [functor {"+" Injection Comparison}]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [monad {"+" do}]] + [math + ["[0]" random] + [number + ["n" nat]]]]] + [\\library + ["[0]" / {"+" CoMonad}]] + [// + [functor {"+" Injection Comparison}]]) -(def: (left_identity injection (^open "_//[0]")) +(def: (left_identity injection (open "_//[0]")) (All (_ f) (-> (Injection f) (CoMonad f) Test)) (do [! random.monad] [sample random.nat @@ -25,7 +25,7 @@ (n.= (morphism start) (|> start _//disjoint (_//each morphism) _//out))))) -(def: (right_identity injection comparison (^open "_//[0]")) +(def: (right_identity injection comparison (open "_//[0]")) (All (_ f) (-> (Injection f) (Comparison f) (CoMonad f) Test)) (do random.monad [sample random.nat @@ -35,7 +35,7 @@ (== start (|> start _//disjoint (_//each _//out)))))) -(def: (associativity injection comparison (^open "_//[0]")) +(def: (associativity injection comparison (open "_//[0]")) (All (_ f) (-> (Injection f) (Comparison f) (CoMonad f) Test)) (do [! random.monad] [sample random.nat diff --git a/stdlib/source/specification/lux/abstract/enum.lux b/stdlib/source/specification/lux/abstract/enum.lux index 48e67fcf5..c2feb2a3f 100644 --- a/stdlib/source/specification/lux/abstract/enum.lux +++ b/stdlib/source/specification/lux/abstract/enum.lux @@ -1,15 +1,15 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [monad {"+" do}]] - [math - ["[0]" random {"+" Random}]]]] - [\\library - ["[0]" /]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [monad {"+" do}]] + [math + ["[0]" random {"+" Random}]]]] + [\\library + ["[0]" /]]) -(def: .public (spec (^open "_#[0]") gen_sample) +(def: .public (spec (open "_#[0]") gen_sample) (All (_ a) (-> (/.Enum a) (Random a) Test)) (do random.monad [sample gen_sample] diff --git a/stdlib/source/specification/lux/abstract/equivalence.lux b/stdlib/source/specification/lux/abstract/equivalence.lux index 42d9e3750..386fafc8d 100644 --- a/stdlib/source/specification/lux/abstract/equivalence.lux +++ b/stdlib/source/specification/lux/abstract/equivalence.lux @@ -11,7 +11,7 @@ [\\library ["[0]" / {"+" Equivalence}]]) -(def: .public (spec (^open "/#[0]") random) +(def: .public (spec (open "/#[0]") random) (All (_ a) (-> (Equivalence a) (Random a) Test)) (do random.monad [left random diff --git a/stdlib/source/specification/lux/abstract/functor.lux b/stdlib/source/specification/lux/abstract/functor.lux index 2d5e6b11d..b82a0c83d 100644 --- a/stdlib/source/specification/lux/abstract/functor.lux +++ b/stdlib/source/specification/lux/abstract/functor.lux @@ -1,18 +1,18 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [equivalence {"+" Equivalence}] - [monad {"+" do}]] - [control - ["[0]" function]] - [math - ["[0]" random] - [number - ["n" nat]]]]] - [\\library - ["[0]" / {"+" Functor}]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [equivalence {"+" Equivalence}] + [monad {"+" do}]] + [control + ["[0]" function]] + [math + ["[0]" random] + [number + ["n" nat]]]]] + [\\library + ["[0]" / {"+" Functor}]]) (type: .public (Injection f) (All (_ a) (-> a (f a)))) @@ -22,7 +22,7 @@ (-> (Equivalence a) (Equivalence (f a))))) -(def: (identity injection comparison (^open "@//[0]")) +(def: (identity injection comparison (open "@//[0]")) (All (_ f) (-> (Injection f) (Comparison f) (Functor f) Test)) (do [! random.monad] [sample (# ! each injection random.nat)] @@ -31,7 +31,7 @@ (@//each function.identity sample) sample)))) -(def: (homomorphism injection comparison (^open "@//[0]")) +(def: (homomorphism injection comparison (open "@//[0]")) (All (_ f) (-> (Injection f) (Comparison f) (Functor f) Test)) (do [! random.monad] [sample random.nat @@ -41,7 +41,7 @@ (@//each increase (injection sample)) (injection (increase sample)))))) -(def: (composition injection comparison (^open "@//[0]")) +(def: (composition injection comparison (open "@//[0]")) (All (_ f) (-> (Injection f) (Comparison f) (Functor f) Test)) (do [! random.monad] [sample (# ! each injection random.nat) diff --git a/stdlib/source/specification/lux/abstract/functor/contravariant.lux b/stdlib/source/specification/lux/abstract/functor/contravariant.lux index 45401b15d..8f379472e 100644 --- a/stdlib/source/specification/lux/abstract/functor/contravariant.lux +++ b/stdlib/source/specification/lux/abstract/functor/contravariant.lux @@ -1,20 +1,20 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [equivalence {"+" Equivalence}] - [monad {"+" do}]] - [control - ["[0]" function]] - [math - ["[0]" random] - [number - ["n" nat]]]]] - [\\library - ["[0]" / {"+" Functor}]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [equivalence {"+" Equivalence}] + [monad {"+" do}]] + [control + ["[0]" function]] + [math + ["[0]" random] + [number + ["n" nat]]]]] + [\\library + ["[0]" / {"+" Functor}]]) -(def: (identity equivalence value (^open "@//[0]")) +(def: (identity equivalence value (open "@//[0]")) (All (_ f a) (-> (Equivalence (f a)) (f a) (Functor f) Test)) (_.test "Law of identity." (equivalence diff --git a/stdlib/source/specification/lux/abstract/hash.lux b/stdlib/source/specification/lux/abstract/hash.lux index 4ba0e5f53..935dc6a2d 100644 --- a/stdlib/source/specification/lux/abstract/hash.lux +++ b/stdlib/source/specification/lux/abstract/hash.lux @@ -1,17 +1,17 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [monad {"+" do}]] - [math - ["[0]" random {"+" Random}] - [number - ["n" nat]]]]] - [\\library - ["[0]" /]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [monad {"+" do}]] + [math + ["[0]" random {"+" Random}] + [number + ["n" nat]]]]] + [\\library + ["[0]" /]]) -(def: .public (spec (^open "_#[0]") random) +(def: .public (spec (open "_#[0]") random) (All (_ a) (-> (/.Hash a) (Random a) Test)) (do random.monad [parameter random diff --git a/stdlib/source/specification/lux/abstract/interval.lux b/stdlib/source/specification/lux/abstract/interval.lux index 6994353f1..c767e42fd 100644 --- a/stdlib/source/specification/lux/abstract/interval.lux +++ b/stdlib/source/specification/lux/abstract/interval.lux @@ -1,16 +1,16 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [monad {"+" do}] - ["[0]" order]] - [math - ["[0]" random {"+" Random}]]]] - [\\library - ["[0]" /]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [monad {"+" do}] + ["[0]" order]] + [math + ["[0]" random {"+" Random}]]]] + [\\library + ["[0]" /]]) -(def: .public (spec (^open "@//[0]") gen_sample) +(def: .public (spec (open "@//[0]") gen_sample) (All (_ a) (-> (/.Interval a) (Random a) Test)) (<| (_.for [/.Interval]) (do random.monad diff --git a/stdlib/source/specification/lux/abstract/mix.lux b/stdlib/source/specification/lux/abstract/mix.lux index c6413c601..8ea932916 100644 --- a/stdlib/source/specification/lux/abstract/mix.lux +++ b/stdlib/source/specification/lux/abstract/mix.lux @@ -1,19 +1,19 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [monad {"+" do}]] - [math - ["[0]" random] - [number - ["n" nat]]]]] - [// - [functor {"+" Injection Comparison}]] - [\\library - ["[0]" /]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [monad {"+" do}]] + [math + ["[0]" random] + [number + ["n" nat]]]]] + [// + [functor {"+" Injection Comparison}]] + [\\library + ["[0]" /]]) -(def: .public (spec injection comparison (^open "@//[0]")) +(def: .public (spec injection comparison (open "@//[0]")) (All (_ f) (-> (Injection f) (Comparison f) (/.Mix f) Test)) (do random.monad [subject random.nat diff --git a/stdlib/source/specification/lux/abstract/monad.lux b/stdlib/source/specification/lux/abstract/monad.lux index 132e9eeb2..fe14440fd 100644 --- a/stdlib/source/specification/lux/abstract/monad.lux +++ b/stdlib/source/specification/lux/abstract/monad.lux @@ -1,17 +1,17 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [math - ["[0]" random] - [number - ["n" nat]]]]] - [\\library - ["[0]" / {"+" do}]] - [// - [functor {"+" Injection Comparison}]]) + [library + [lux "*" + ["_" test {"+" Test}] + [math + ["[0]" random] + [number + ["n" nat]]]]] + [\\library + ["[0]" / {"+" do}]] + [// + [functor {"+" Injection Comparison}]]) -(def: (left_identity injection comparison (^open "_//[0]")) +(def: (left_identity injection comparison (open "_//[0]")) (All (_ f) (-> (Injection f) (Comparison f) (/.Monad f) Test)) (do [! random.monad] [sample random.nat @@ -23,7 +23,7 @@ (|> (injection sample) (_//each morphism) _//conjoint) (morphism sample))))) -(def: (right_identity injection comparison (^open "_//[0]")) +(def: (right_identity injection comparison (open "_//[0]")) (All (_ f) (-> (Injection f) (Comparison f) (/.Monad f) Test)) (do random.monad [sample random.nat] @@ -32,7 +32,7 @@ (|> (injection sample) (_//each _//in) _//conjoint) (injection sample))))) -(def: (associativity injection comparison (^open "_//[0]")) +(def: (associativity injection comparison (open "_//[0]")) (All (_ f) (-> (Injection f) (Comparison f) (/.Monad f) Test)) (do [! random.monad] [sample random.nat diff --git a/stdlib/source/specification/lux/abstract/monoid.lux b/stdlib/source/specification/lux/abstract/monoid.lux index c3857dbbb..6d5ab67fc 100644 --- a/stdlib/source/specification/lux/abstract/monoid.lux +++ b/stdlib/source/specification/lux/abstract/monoid.lux @@ -1,17 +1,17 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [monad {"+" do}]] - [math - ["[0]" random {"+" Random}]]]] - [\\library - ["[0]" / - [// - [equivalence {"+" Equivalence}]]]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [monad {"+" do}]] + [math + ["[0]" random {"+" Random}]]]] + [\\library + ["[0]" / + [// + [equivalence {"+" Equivalence}]]]]) -(def: .public (spec (^open "_#[0]") (^open "_#[0]") gen_sample) +(def: .public (spec (open "_#[0]") (open "_#[0]") gen_sample) (All (_ a) (-> (Equivalence a) (/.Monoid a) (Random a) Test)) (do random.monad [sample gen_sample diff --git a/stdlib/source/specification/lux/abstract/order.lux b/stdlib/source/specification/lux/abstract/order.lux index fd5560710..1c77ffc3b 100644 --- a/stdlib/source/specification/lux/abstract/order.lux +++ b/stdlib/source/specification/lux/abstract/order.lux @@ -1,15 +1,15 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [monad {"+" do}]] - [math - ["[0]" random {"+" Random}]]]] - [\\library - ["[0]" /]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [monad {"+" do}]] + [math + ["[0]" random {"+" Random}]]]] + [\\library + ["[0]" /]]) -(def: .public (spec (^open "@//[0]") generator) +(def: .public (spec (open "@//[0]") generator) (All (_ a) (-> (/.Order a) (Random a) Test)) (<| (_.for [/.Order]) ($_ _.and diff --git a/stdlib/source/specification/lux/world/file.lux b/stdlib/source/specification/lux/world/file.lux index 0e4a240d2..c3164d544 100644 --- a/stdlib/source/specification/lux/world/file.lux +++ b/stdlib/source/specification/lux/world/file.lux @@ -1,34 +1,34 @@ (.using - [library - [lux "*" - ["_" test {"+" Test}] - [abstract - [monad {"+" do}] - ["[0]" predicate]] - [control - [io {"+" IO}] - ["[0]" maybe ("[1]#[0]" functor)] - ["[0]" try ("[1]#[0]" functor)] - ["[0]" exception] - [concurrency - ["[0]" async {"+" Async}]]] - [data - ["[0]" text ("[1]#[0]" equivalence) - ["%" format {"+" format}] - [encoding - ["[0]" utf8 ("[1]#[0]" codec)]]] - ["[0]" binary {"+" Binary} ("[1]#[0]" equivalence monoid) - ["$[1]" \\test]] - [collection - ["[0]" list]]] - [math - ["[0]" random] - [number - ["n" nat]]] - [time - ["[0]" instant {"+" Instant} ("[1]#[0]" equivalence)]]]] - [\\library - ["[0]" /]]) + [library + [lux "*" + ["_" test {"+" Test}] + [abstract + [monad {"+" do}] + ["[0]" predicate]] + [control + [io {"+" IO}] + ["[0]" maybe ("[1]#[0]" functor)] + ["[0]" try ("[1]#[0]" functor)] + ["[0]" exception] + [concurrency + ["[0]" async {"+" Async}]]] + [data + ["[0]" text ("[1]#[0]" equivalence) + ["%" format {"+" format}] + [encoding + ["[0]" utf8 ("[1]#[0]" codec)]]] + ["[0]" binary {"+" Binary} ("[1]#[0]" equivalence monoid) + ["$[1]" \\test]] + [collection + ["[0]" list]]] + [math + ["[0]" random] + [number + ["n" nat]]] + [time + ["[0]" instant {"+" Instant} ("[1]#[0]" equivalence)]]]] + [\\library + ["[0]" /]]) (def: (for_path fs) (-> (IO (/.System Async)) Test) @@ -125,7 +125,7 @@ [made_sub? (# fs make_directory sub_dir) directory_files (# fs directory_files parent) sub_directories (# fs sub_directories parent) - .let [(^open "list#[0]") (list.equivalence text.equivalence)]] + .let [(open "list#[0]") (list.equivalence text.equivalence)]] (in (<| (try.else false) (do try.monad [_ made_sub?] |