diff options
Diffstat (limited to 'stdlib/source')
266 files changed, 531 insertions, 410 deletions
diff --git a/stdlib/source/lux.lux b/stdlib/source/lux.lux index 45b190c82..1a3d71480 100644 --- a/stdlib/source/lux.lux +++ b/stdlib/source/lux.lux @@ -3958,7 +3958,7 @@ #None (fail "Wrong syntax for structure:")))) -(def: (identity x) (All [a] (-> a a)) x) +(def: (function@identity x) (All [a] (-> a a)) x) (macro: #export (type: tokens) {#.doc (text$ ($_ "lux text concat" @@ -5289,8 +5289,8 @@ <open> parts-text <close>)])) - ([#Form "(" ")" ..identity] - [#Tuple "[" "]" ..identity] + ([#Form "(" ")" ..function@identity] + [#Tuple "[" "]" ..function@identity] [#Record "{" "}" rejoin-all-pairs]) [new-cursor (#Rev value)] diff --git a/stdlib/source/lux/control/algebra.lux b/stdlib/source/lux/abstract/algebra.lux index 2813ed0e7..2813ed0e7 100644 --- a/stdlib/source/lux/control/algebra.lux +++ b/stdlib/source/lux/abstract/algebra.lux diff --git a/stdlib/source/lux/control/apply.lux b/stdlib/source/lux/abstract/apply.lux index 5eb42b63d..5eb42b63d 100644 --- a/stdlib/source/lux/control/apply.lux +++ b/stdlib/source/lux/abstract/apply.lux diff --git a/stdlib/source/lux/control/codec.lux b/stdlib/source/lux/abstract/codec.lux index b51f76d97..abe80ba4a 100644 --- a/stdlib/source/lux/control/codec.lux +++ b/stdlib/source/lux/abstract/codec.lux @@ -1,11 +1,10 @@ (.module: [lux #* - [control - monad] [data - ["." error (#+ Error)]]]) + ["." error (#+ Error)]]] + [// + monad]) -## [Signatures] (signature: #export (Codec m a) {#.doc "A way to move back-and-forth between a type and an alternative representation for it."} (: (-> a m) @@ -13,7 +12,6 @@ (: (-> m (Error a)) decode)) -## [Values] (structure: #export (compose cb-codec ba-codec) {#.doc "Codec composition."} (All [a b c] diff --git a/stdlib/source/lux/control/comonad.lux b/stdlib/source/lux/abstract/comonad.lux index 1d6ac49e5..1d6ac49e5 100644 --- a/stdlib/source/lux/control/comonad.lux +++ b/stdlib/source/lux/abstract/comonad.lux diff --git a/stdlib/source/lux/control/enum.lux b/stdlib/source/lux/abstract/enum.lux index 9f2845b01..5bbb7df38 100644 --- a/stdlib/source/lux/control/enum.lux +++ b/stdlib/source/lux/abstract/enum.lux @@ -1,7 +1,7 @@ (.module: - [lux #* - [control - ["." order]]]) + [lux #*] + [// + ["." order]]) (signature: #export (Enum e) {#.doc "Enumerable types, with a notion of moving forward and backwards through a type's instances."} diff --git a/stdlib/source/lux/control/equivalence.lux b/stdlib/source/lux/abstract/equivalence.lux index 57db7a925..b773505de 100644 --- a/stdlib/source/lux/control/equivalence.lux +++ b/stdlib/source/lux/abstract/equivalence.lux @@ -1,7 +1,7 @@ (.module: - [lux #* - [control - [functor (#+ Contravariant)]]]) + [lux #*] + [// + [functor (#+ Contravariant)]]) (signature: #export (Equivalence a) {#.doc "Equivalence for a type's instances."} diff --git a/stdlib/source/lux/control/fold.lux b/stdlib/source/lux/abstract/fold.lux index 504f41f58..504f41f58 100644 --- a/stdlib/source/lux/control/fold.lux +++ b/stdlib/source/lux/abstract/fold.lux diff --git a/stdlib/source/lux/control/functor.lux b/stdlib/source/lux/abstract/functor.lux index 1ade0a45b..1ade0a45b 100644 --- a/stdlib/source/lux/control/functor.lux +++ b/stdlib/source/lux/abstract/functor.lux diff --git a/stdlib/source/lux/control/hash.lux b/stdlib/source/lux/abstract/hash.lux index d2dee3bcb..d2dee3bcb 100644 --- a/stdlib/source/lux/control/hash.lux +++ b/stdlib/source/lux/abstract/hash.lux diff --git a/stdlib/source/lux/control/interval.lux b/stdlib/source/lux/abstract/interval.lux index 046f5b77d..efb131843 100644 --- a/stdlib/source/lux/control/interval.lux +++ b/stdlib/source/lux/abstract/interval.lux @@ -1,9 +1,9 @@ (.module: - [lux #* - [control - [equivalence (#+ Equivalence)] - ["." order] - [enum (#+ Enum)]]]) + [lux #*] + [// + [equivalence (#+ Equivalence)] + ["." order] + [enum (#+ Enum)]]) (signature: #export (Interval a) {#.doc "A representation of top and bottom boundaries for an ordered type."} diff --git a/stdlib/source/lux/control/monad.lux b/stdlib/source/lux/abstract/monad.lux index 513f55b1e..0e509c64e 100644 --- a/stdlib/source/lux/control/monad.lux +++ b/stdlib/source/lux/abstract/monad.lux @@ -1,5 +1,5 @@ (.module: - lux + [lux #*] [// ["." functor (#+ Functor)]]) diff --git a/stdlib/source/lux/control/monad/free.lux b/stdlib/source/lux/abstract/monad/free.lux index 214261450..214261450 100644 --- a/stdlib/source/lux/control/monad/free.lux +++ b/stdlib/source/lux/abstract/monad/free.lux diff --git a/stdlib/source/lux/control/monad/indexed.lux b/stdlib/source/lux/abstract/monad/indexed.lux index 57a18c109..57a18c109 100644 --- a/stdlib/source/lux/control/monad/indexed.lux +++ b/stdlib/source/lux/abstract/monad/indexed.lux diff --git a/stdlib/source/lux/control/monoid.lux b/stdlib/source/lux/abstract/monoid.lux index 33d082020..33d082020 100644 --- a/stdlib/source/lux/control/monoid.lux +++ b/stdlib/source/lux/abstract/monoid.lux diff --git a/stdlib/source/lux/control/number.lux b/stdlib/source/lux/abstract/number.lux index b3a314ba5..b3a314ba5 100644 --- a/stdlib/source/lux/control/number.lux +++ b/stdlib/source/lux/abstract/number.lux diff --git a/stdlib/source/lux/control/order.lux b/stdlib/source/lux/abstract/order.lux index 68573b326..85b33fa18 100644 --- a/stdlib/source/lux/control/order.lux +++ b/stdlib/source/lux/abstract/order.lux @@ -1,9 +1,8 @@ (.module: [lux #* - [control - [functor (#+ Contravariant)]] function] [// + [functor (#+ Contravariant)] ["." equivalence (#+ Equivalence)]]) (`` (signature: #export (Order a) diff --git a/stdlib/source/lux/control/predicate.lux b/stdlib/source/lux/abstract/predicate.lux index 7d6433f33..faa1859b9 100644 --- a/stdlib/source/lux/control/predicate.lux +++ b/stdlib/source/lux/abstract/predicate.lux @@ -1,9 +1,9 @@ (.module: [lux #* - [control - [monoid (#+ Monoid)] - [functor (#+ Contravariant)]] - ["." function]]) + ["." function]] + [// + [monoid (#+ Monoid)] + [functor (#+ Contravariant)]]) (type: #export (Predicate a) (-> a Bit)) @@ -24,7 +24,9 @@ ) (template [<name> <identity> <composition>] - [(structure: #export <name> (All [a] (Monoid (Predicate a))) + [(structure: #export <name> + (All [a] (Monoid (Predicate a))) + (def: identity <identity>) (def: compose <composition>))] @@ -48,6 +50,8 @@ (Predicate a))) (|>> (predicate (rec predicate)))) -(structure: #export _ (Contravariant Predicate) +(structure: #export _ + (Contravariant Predicate) + (def: (map-1 f fb) (|>> f fb))) diff --git a/stdlib/source/lux/cli.lux b/stdlib/source/lux/cli.lux index 34f4fa31c..2ee55a9b5 100644 --- a/stdlib/source/lux/cli.lux +++ b/stdlib/source/lux/cli.lux @@ -1,19 +1,20 @@ (.module: [lux #* + [abstract + [monad (#+ do)]] [control - monad ["p" parser (#+ Parser)] [concurrency ["." process]]] [data [collection - ["." list ("#;." monoid monad)]] - ["." text ("#;." equivalence) + ["." list ("#@." monoid monad)]] + ["." text ("#@." equivalence) format] ["." error (#+ Error)]] [macro (#+ with-gensyms) ["." code] - ["s" syntax (#+ syntax: Syntax)]] + ["s" syntax (#+ Syntax syntax:)]] [tool [compiler ["." host]]] @@ -63,7 +64,7 @@ (function (_ inputs) (do error.monad [[remaining raw] (any inputs)] - (if (text;= reference raw) + (if (text@= reference raw) (wrap [remaining []]) (error.fail (format "Missing token: '" reference "'")))))) @@ -131,7 +132,7 @@ (wrap []))) (program: [name] - (io (log! (text;compose "Hello, " name)))) + (io (log! (text@compose "Hello, " name)))) (program: [{config config^}] (do io.monad @@ -153,9 +154,9 @@ (case ((: (~! (..CLI (io.IO .Any))) ((~! do) (~! p.monad) [(~+ (|> args - (list;map (function (_ [binding parser]) + (list@map (function (_ [binding parser]) (list binding parser))) - list;join)) + list@join)) (~ g!_) ..end] ((~' wrap) ((~! do) (~! io.monad) [(~ g!output) (~ body) diff --git a/stdlib/source/lux/control/concatenative.lux b/stdlib/source/lux/control/concatenative.lux index 2ec99fe8f..9a20132fd 100644 --- a/stdlib/source/lux/control/concatenative.lux +++ b/stdlib/source/lux/control/concatenative.lux @@ -4,8 +4,7 @@ i/+ i/- i/* i// i/% i/= i/< i/<= i/> i/>= r/+ r/- r/* r// r/% r/= r/< r/<= r/> r/>= f/+ f/- f/* f// f/% f/= f/< f/<= f/> f/>=) - [control - ["p" parser ("#;." monad)] + [abstract ["." monad]] [data ["." text @@ -19,7 +18,9 @@ [syntax ["cs" common ["csr" reader] - ["csw" writer]]]]]) + ["csw" writer]]]]] + [// + ["p" parser ("#;." monad)]]) ## [Syntax] (type: Alias [Text Code]) diff --git a/stdlib/source/lux/control/concurrency/actor.lux b/stdlib/source/lux/control/concurrency/actor.lux index 133144a83..3384b7b66 100644 --- a/stdlib/source/lux/control/concurrency/actor.lux +++ b/stdlib/source/lux/control/concurrency/actor.lux @@ -1,7 +1,9 @@ (.module: {#.doc "The actor model of concurrency."} [lux #* ["." function] - [control monad + [abstract + monad] + [control ["p" parser] ["ex" exception (#+ exception:)]] ["." io (#+ IO io) ("#;." monad)] diff --git a/stdlib/source/lux/control/concurrency/atom.lux b/stdlib/source/lux/control/concurrency/atom.lux index a8fd975b2..6b88a0a4a 100644 --- a/stdlib/source/lux/control/concurrency/atom.lux +++ b/stdlib/source/lux/control/concurrency/atom.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monad (#+ do)]] ["." function] ["." io (#- run)] diff --git a/stdlib/source/lux/control/concurrency/frp.lux b/stdlib/source/lux/control/concurrency/frp.lux index 907ffa97d..74212594f 100644 --- a/stdlib/source/lux/control/concurrency/frp.lux +++ b/stdlib/source/lux/control/concurrency/frp.lux @@ -1,12 +1,13 @@ (.module: [lux #* ["." io (#+ IO io)] - [control + [abstract [predicate (#+ Predicate)] [equivalence (#+ Equivalence)] [functor (#+ Functor)] [apply (#+ Apply)] - ["." monad (#+ Monad do)] + ["." monad (#+ Monad do)]] + [control ["ex" exception (#+ exception:)]] [data ["." maybe ("#@." functor)] diff --git a/stdlib/source/lux/control/concurrency/process.lux b/stdlib/source/lux/control/concurrency/process.lux index 018659ba1..96963a7f2 100644 --- a/stdlib/source/lux/control/concurrency/process.lux +++ b/stdlib/source/lux/control/concurrency/process.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] ["ex" exception (#+ exception:)]] [data [collection diff --git a/stdlib/source/lux/control/concurrency/promise.lux b/stdlib/source/lux/control/concurrency/promise.lux index fa8acc6d9..63f506c37 100644 --- a/stdlib/source/lux/control/concurrency/promise.lux +++ b/stdlib/source/lux/control/concurrency/promise.lux @@ -1,6 +1,6 @@ (.module: [lux (#- and or) - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] ["." monad (#+ Monad do)]] diff --git a/stdlib/source/lux/control/concurrency/semaphore.lux b/stdlib/source/lux/control/concurrency/semaphore.lux index 2bc5be651..1159e41e6 100644 --- a/stdlib/source/lux/control/concurrency/semaphore.lux +++ b/stdlib/source/lux/control/concurrency/semaphore.lux @@ -1,6 +1,7 @@ (.module: [lux #* - [control [monad (#+ do)]] + [abstract + [monad (#+ do)]] ["." io (#+ IO)] [type abstract diff --git a/stdlib/source/lux/control/concurrency/stm.lux b/stdlib/source/lux/control/concurrency/stm.lux index 1bc69f5e2..fce9cbd82 100644 --- a/stdlib/source/lux/control/concurrency/stm.lux +++ b/stdlib/source/lux/control/concurrency/stm.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] ["." monad (#+ do Monad)]] diff --git a/stdlib/source/lux/control/continuation.lux b/stdlib/source/lux/control/continuation.lux index 7a1fd7be8..e960e1fd3 100644 --- a/stdlib/source/lux/control/continuation.lux +++ b/stdlib/source/lux/control/continuation.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad do)]] diff --git a/stdlib/source/lux/control/contract.lux b/stdlib/source/lux/control/contract.lux index 065829f44..1add3be8f 100644 --- a/stdlib/source/lux/control/contract.lux +++ b/stdlib/source/lux/control/contract.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract monad] [data [text diff --git a/stdlib/source/lux/control/exception.lux b/stdlib/source/lux/control/exception.lux index 71cfa3414..4472b047c 100644 --- a/stdlib/source/lux/control/exception.lux +++ b/stdlib/source/lux/control/exception.lux @@ -1,7 +1,8 @@ (.module: {#.doc "Exception-handling functionality built on top of the Error type."} [lux #* + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["p" parser]] [data ["//" error (#+ Error)] diff --git a/stdlib/source/lux/control/parser.lux b/stdlib/source/lux/control/parser.lux index 035576cab..84f63c548 100644 --- a/stdlib/source/lux/control/parser.lux +++ b/stdlib/source/lux/control/parser.lux @@ -1,6 +1,6 @@ (.module: [lux (#- or and not) - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad do)] @@ -15,7 +15,9 @@ {#.doc "A generic parser."} (-> s (Error [s a]))) -(structure: #export functor (All [s] (Functor (Parser s))) +(structure: #export functor + (All [s] (Functor (Parser s))) + (def: (map f ma) (function (_ input) (case (ma input) @@ -25,7 +27,9 @@ (#error.Success [input' a]) (#error.Success [input' (f a)]))))) -(structure: #export apply (All [s] (Apply (Parser s))) +(structure: #export apply + (All [s] (Apply (Parser s))) + (def: &functor ..functor) (def: (apply ff fa) @@ -42,7 +46,9 @@ (#error.Failure msg) (#error.Failure msg))))) -(structure: #export monad (All [s] (Monad (Parser s))) +(structure: #export monad + (All [s] (Monad (Parser s))) + (def: &functor ..functor) (def: (wrap x) diff --git a/stdlib/source/lux/control/pipe.lux b/stdlib/source/lux/control/pipe.lux index 8700217e2..b6381e7a6 100644 --- a/stdlib/source/lux/control/pipe.lux +++ b/stdlib/source/lux/control/pipe.lux @@ -1,7 +1,8 @@ (.module: {#.doc "Composable extensions to the piping macros (|> and <|) that enhance them with various abilities."} [lux #* + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["p" parser]] [data ["e" error] diff --git a/stdlib/source/lux/control/reader.lux b/stdlib/source/lux/control/reader.lux index 01b139b82..9236fb5a5 100644 --- a/stdlib/source/lux/control/reader.lux +++ b/stdlib/source/lux/control/reader.lux @@ -1,9 +1,9 @@ (.module: [lux #* - [control + [abstract ["." functor (#+ Functor)] [apply (#+ Apply)] - ["." monad (#+ do Monad)]]]) + ["." monad (#+ Monad do)]]]) (type: #export (Reader r a) {#.doc "Computations that have access to some environmental value."} diff --git a/stdlib/source/lux/control/region.lux b/stdlib/source/lux/control/region.lux index 596b1a0d4..0671e1c08 100644 --- a/stdlib/source/lux/control/region.lux +++ b/stdlib/source/lux/control/region.lux @@ -1,16 +1,17 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] - ["." monad (#+ Monad do)] - ["ex" exception (#+ Exception exception:)]] + ["." monad (#+ Monad do)]] [data ["." error (#+ Error)] ["." text format] [collection - ["." list ("#;." fold)]]]]) + ["." list ("#;." fold)]]]] + [// + ["ex" exception (#+ Exception exception:)]]) (type: (Cleaner r m) (-> r (m (Error Any)))) diff --git a/stdlib/source/lux/control/remember.lux b/stdlib/source/lux/control/remember.lux index 34bb38001..6d21a1948 100644 --- a/stdlib/source/lux/control/remember.lux +++ b/stdlib/source/lux/control/remember.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["p" parser ("#@." functor)] ["ex" exception (#+ exception:)]] [data diff --git a/stdlib/source/lux/control/security/capability.lux b/stdlib/source/lux/control/security/capability.lux index 595c573d5..4684c8bdf 100644 --- a/stdlib/source/lux/control/security/capability.lux +++ b/stdlib/source/lux/control/security/capability.lux @@ -1,8 +1,9 @@ (.module: [lux #* ["." io (#+ IO)] + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["p" parser] [concurrency ["." promise (#+ Promise)]]] diff --git a/stdlib/source/lux/control/security/integrity.lux b/stdlib/source/lux/control/security/integrity.lux index 81dee0c16..625f3c431 100644 --- a/stdlib/source/lux/control/security/integrity.lux +++ b/stdlib/source/lux/control/security/integrity.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad)]] diff --git a/stdlib/source/lux/control/security/privacy.lux b/stdlib/source/lux/control/security/privacy.lux index fe6a70233..4a54947b1 100644 --- a/stdlib/source/lux/control/security/privacy.lux +++ b/stdlib/source/lux/control/security/privacy.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad)]] diff --git a/stdlib/source/lux/control/state.lux b/stdlib/source/lux/control/state.lux index fc017f177..b4e958c6b 100644 --- a/stdlib/source/lux/control/state.lux +++ b/stdlib/source/lux/control/state.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad do)]]]) diff --git a/stdlib/source/lux/control/thread.lux b/stdlib/source/lux/control/thread.lux index c4625d6f5..e74dc1eb5 100644 --- a/stdlib/source/lux/control/thread.lux +++ b/stdlib/source/lux/control/thread.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad do)]] diff --git a/stdlib/source/lux/control/writer.lux b/stdlib/source/lux/control/writer.lux index 278fc9236..bbca0faa0 100644 --- a/stdlib/source/lux/control/writer.lux +++ b/stdlib/source/lux/control/writer.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract monoid ["." functor (#+ Functor)] [apply (#+ Apply)] diff --git a/stdlib/source/lux/data/bit.lux b/stdlib/source/lux/data/bit.lux index 72cfc096e..8c1b1d1b3 100644 --- a/stdlib/source/lux/data/bit.lux +++ b/stdlib/source/lux/data/bit.lux @@ -1,27 +1,34 @@ (.module: [lux #* - [control + [abstract [monoid (#+ Monoid)] [equivalence (#+ Equivalence)] hash [codec (#+ Codec)]] - function]) + ["." function]]) -(structure: #export equivalence (Equivalence Bit) +(structure: #export equivalence + (Equivalence Bit) + (def: (= x y) (if x y (not y)))) -(structure: #export hash (Hash Bit) +(structure: #export hash + (Hash Bit) + (def: &equivalence ..equivalence) + (def: (hash value) (case value #1 1 #0 0))) (template [<name> <identity> <op>] - [(structure: #export <name> (Monoid Bit) + [(structure: #export <name> + (Monoid Bit) + (def: identity <identity>) (def: (compose x y) (<op> x y)))] @@ -45,4 +52,4 @@ {#.doc (doc "Generates the complement of a predicate." "That is a predicate that returns the oposite of the original predicate.")} (All [a] (-> (-> a Bit) (-> a Bit))) - (compose not)) + (function.compose not)) diff --git a/stdlib/source/lux/data/collection/array.lux b/stdlib/source/lux/data/collection/array.lux index 55e0ceb2b..946b6a3b4 100644 --- a/stdlib/source/lux/data/collection/array.lux +++ b/stdlib/source/lux/data/collection/array.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monoid (#+ Monoid)] [functor (#+ Functor)] [equivalence (#+ Equivalence)] diff --git a/stdlib/source/lux/data/collection/bits.lux b/stdlib/source/lux/data/collection/bits.lux index 95732fe15..0e5f7a16e 100644 --- a/stdlib/source/lux/data/collection/bits.lux +++ b/stdlib/source/lux/data/collection/bits.lux @@ -1,7 +1,8 @@ (.module: [lux (#- not and or) + [abstract + [equivalence (#+ Equivalence)]] [control - [equivalence (#+ Equivalence)] pipe] [data ["." maybe] diff --git a/stdlib/source/lux/data/collection/dictionary.lux b/stdlib/source/lux/data/collection/dictionary.lux index a9c53ea18..3580b0ddd 100644 --- a/stdlib/source/lux/data/collection/dictionary.lux +++ b/stdlib/source/lux/data/collection/dictionary.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [hash (#+ Hash)] [equivalence (#+ Equivalence)] [functor (#+ Functor)]] diff --git a/stdlib/source/lux/data/collection/dictionary/ordered.lux b/stdlib/source/lux/data/collection/dictionary/ordered.lux index 5bd957364..58026984f 100644 --- a/stdlib/source/lux/data/collection/dictionary/ordered.lux +++ b/stdlib/source/lux/data/collection/dictionary/ordered.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monad (#+ Monad do)] equivalence [order (#+ Order)]] diff --git a/stdlib/source/lux/data/collection/list.lux b/stdlib/source/lux/data/collection/list.lux index b2da3337b..bf4661ad4 100644 --- a/stdlib/source/lux/data/collection/list.lux +++ b/stdlib/source/lux/data/collection/list.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monoid (#+ Monoid)] ["." functor (#+ Functor)] [apply (#+ Apply)] diff --git a/stdlib/source/lux/data/collection/queue.lux b/stdlib/source/lux/data/collection/queue.lux index 699440648..026190f2b 100644 --- a/stdlib/source/lux/data/collection/queue.lux +++ b/stdlib/source/lux/data/collection/queue.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [functor (#+ Functor)]] [data diff --git a/stdlib/source/lux/data/collection/queue/priority.lux b/stdlib/source/lux/data/collection/queue/priority.lux index 1e7d40022..34a87e51d 100644 --- a/stdlib/source/lux/data/collection/queue/priority.lux +++ b/stdlib/source/lux/data/collection/queue/priority.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [monad (#+ do Monad)]] [data diff --git a/stdlib/source/lux/data/collection/row.lux b/stdlib/source/lux/data/collection/row.lux index d56da4b79..2dc45312f 100644 --- a/stdlib/source/lux/data/collection/row.lux +++ b/stdlib/source/lux/data/collection/row.lux @@ -1,14 +1,15 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] - [monad (#+ do Monad)] + [monad (#+ Monad do)] [equivalence (#+ Equivalence)] - monoid - fold - ["p" parser] + [monoid (#+ Monoid)] + [fold (#+ Fold)] [predicate (#+ Predicate)]] + [control + ["p" parser]] [data ["." maybe] ["." product] @@ -338,7 +339,7 @@ (syntax: #export (row {elems (p.some s.any)}) {#.doc (doc "Row literals." (row +10 +20 +30 +40))} - (wrap (list (` (from-list (list (~+ elems))))))) + (wrap (list (` (..from-list (list (~+ elems))))))) (structure: #export (node-equivalence Equivalence<a>) (All [a] (-> (Equivalence a) (Equivalence (Node a)))) (def: (= v1 v2) diff --git a/stdlib/source/lux/data/collection/sequence.lux b/stdlib/source/lux/data/collection/sequence.lux index 720515c2d..07735cc26 100644 --- a/stdlib/source/lux/data/collection/sequence.lux +++ b/stdlib/source/lux/data/collection/sequence.lux @@ -1,9 +1,10 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] - [comonad (#+ CoMonad)] - ["." continuation (#+ pending Cont)] + [comonad (#+ CoMonad)]] + [control + ["." continuation (#+ Cont pending)] ["p" parser]] [macro (#+ with-gensyms) ["." code] diff --git a/stdlib/source/lux/data/collection/set.lux b/stdlib/source/lux/data/collection/set.lux index 5ab374b84..4c764b818 100644 --- a/stdlib/source/lux/data/collection/set.lux +++ b/stdlib/source/lux/data/collection/set.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [predicate (#+ Predicate)] [monoid (#+ Monoid)] diff --git a/stdlib/source/lux/data/collection/set/multi.lux b/stdlib/source/lux/data/collection/set/multi.lux index 012224e31..c11d4c558 100644 --- a/stdlib/source/lux/data/collection/set/multi.lux +++ b/stdlib/source/lux/data/collection/set/multi.lux @@ -1,7 +1,7 @@ ## https://en.wikipedia.org/wiki/Multiset (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [hash (#+ Hash)]] ["." function] diff --git a/stdlib/source/lux/data/collection/set/ordered.lux b/stdlib/source/lux/data/collection/set/ordered.lux index 4d607ce15..4f814c1ea 100644 --- a/stdlib/source/lux/data/collection/set/ordered.lux +++ b/stdlib/source/lux/data/collection/set/ordered.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [order (#+ Order)]] [data diff --git a/stdlib/source/lux/data/collection/stack.lux b/stdlib/source/lux/data/collection/stack.lux index d3a937cb4..089398ca5 100644 --- a/stdlib/source/lux/data/collection/stack.lux +++ b/stdlib/source/lux/data/collection/stack.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [functor (#+ Functor)]] [data diff --git a/stdlib/source/lux/data/collection/tree/finger.lux b/stdlib/source/lux/data/collection/tree/finger.lux index e3aed3b0d..f35129dff 100644 --- a/stdlib/source/lux/data/collection/tree/finger.lux +++ b/stdlib/source/lux/data/collection/tree/finger.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["m" monoid] [predicate (#+ Predicate)]] [data diff --git a/stdlib/source/lux/data/collection/tree/rose.lux b/stdlib/source/lux/data/collection/tree/rose.lux index 97cb840fb..ad64b72ed 100644 --- a/stdlib/source/lux/data/collection/tree/rose.lux +++ b/stdlib/source/lux/data/collection/tree/rose.lux @@ -1,11 +1,12 @@ (.module: [lux #* - [control + [abstract functor [monad (#+ do Monad)] equivalence - ["p" parser] fold] + [control + ["p" parser]] [data [collection ["." list ("#@." monad fold)]]] diff --git a/stdlib/source/lux/data/collection/tree/rose/zipper.lux b/stdlib/source/lux/data/collection/tree/rose/zipper.lux index 1a8ed4d5c..bac8961e3 100644 --- a/stdlib/source/lux/data/collection/tree/rose/zipper.lux +++ b/stdlib/source/lux/data/collection/tree/rose/zipper.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract functor comonad [equivalence (#+ Equivalence)]] diff --git a/stdlib/source/lux/data/color.lux b/stdlib/source/lux/data/color.lux index bd02c4087..60b87ab61 100644 --- a/stdlib/source/lux/data/color.lux +++ b/stdlib/source/lux/data/color.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)]] [data [number diff --git a/stdlib/source/lux/data/env.lux b/stdlib/source/lux/data/env.lux index 2c8d01fcd..7e4265e6a 100644 --- a/stdlib/source/lux/data/env.lux +++ b/stdlib/source/lux/data/env.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] comonad]]) diff --git a/stdlib/source/lux/data/error.lux b/stdlib/source/lux/data/error.lux index 3e7369ed3..c730ee5a5 100644 --- a/stdlib/source/lux/data/error.lux +++ b/stdlib/source/lux/data/error.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." functor (#+ Functor)] [apply (#+ Apply)] ["." monad (#+ Monad do)] @@ -10,7 +10,9 @@ (#Failure Text) (#Success a)) -(structure: #export functor (Functor Error) +(structure: #export functor + (Functor Error) + (def: (map f ma) (case ma (#Failure msg) @@ -19,7 +21,9 @@ (#Success datum) (#Success (f datum))))) -(structure: #export apply (Apply Error) +(structure: #export apply + (Apply Error) + (def: &functor ..functor) (def: (apply ff fa) @@ -36,7 +40,9 @@ (#Failure msg)) )) -(structure: #export monad (Monad Error) +(structure: #export monad + (Monad Error) + (def: &functor ..functor) (def: (wrap a) @@ -74,6 +80,7 @@ (structure: #export (equivalence (^open ",@.")) (All [a] (-> (Equivalence a) (Equivalence (Error a)))) + (def: (= reference sample) (case [reference sample] [(#Success reference) (#Success sample)] diff --git a/stdlib/source/lux/data/format/binary.lux b/stdlib/source/lux/data/format/binary.lux index b794fe029..771d9f693 100644 --- a/stdlib/source/lux/data/format/binary.lux +++ b/stdlib/source/lux/data/format/binary.lux @@ -1,12 +1,13 @@ (.module: [lux (#- and or nat int rev list type) - [control + [abstract [monoid (#+ Monoid)] ["." fold] - [monad (#+ do Monad)] - ["." parser (#+ Parser) ("#;." functor)] - ["ex" exception (#+ exception:)] + [monad (#+ Monad do)] [equivalence (#+ Equivalence)]] + [control + ["." parser (#+ Parser) ("#;." functor)] + ["ex" exception (#+ exception:)]] [data ["." error (#+ Error)] [number diff --git a/stdlib/source/lux/data/format/context.lux b/stdlib/source/lux/data/format/context.lux index a89675393..6ef06085f 100644 --- a/stdlib/source/lux/data/format/context.lux +++ b/stdlib/source/lux/data/format/context.lux @@ -1,9 +1,10 @@ (.module: [lux #* + [abstract + [monad (#+ do)]] [control [parser (#+ Parser)] - ["ex" exception (#+ exception:)] - [monad (#+ do)]] + ["ex" exception (#+ exception:)]] [data ["." error (#+ Error)] ["." text diff --git a/stdlib/source/lux/data/format/json.lux b/stdlib/source/lux/data/format/json.lux index b03cb5ae9..34fcf4dfb 100644 --- a/stdlib/source/lux/data/format/json.lux +++ b/stdlib/source/lux/data/format/json.lux @@ -1,11 +1,12 @@ (.module: {#.doc (.doc "Functionality for reading and writing values in the JSON format." "For more information, please see: http://www.json.org/")} [lux #* - [control - pipe + [abstract ["." monad (#+ Monad do)] [equivalence (#+ Equivalence)] - codec + codec] + [control + pipe ["p" parser (#+ Parser) ("#@." monad)] ["ex" exception (#+ exception:)]] [data diff --git a/stdlib/source/lux/data/format/xml.lux b/stdlib/source/lux/data/format/xml.lux index 85081f86c..6cd469e04 100644 --- a/stdlib/source/lux/data/format/xml.lux +++ b/stdlib/source/lux/data/format/xml.lux @@ -1,9 +1,10 @@ (.module: {#.doc "Functionality for reading, generating and processing values in the XML format."} [lux #* - [control + [abstract monad [equivalence (#+ Equivalence)] - codec + codec] + [control ["p" parser ("#;." monad)] ["ex" exception (#+ exception:)]] [data diff --git a/stdlib/source/lux/data/identity.lux b/stdlib/source/lux/data/identity.lux index 7793bd7f5..ff464a6f8 100644 --- a/stdlib/source/lux/data/identity.lux +++ b/stdlib/source/lux/data/identity.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad)] diff --git a/stdlib/source/lux/data/lazy.lux b/stdlib/source/lux/data/lazy.lux index dc889675a..82cd8ec51 100644 --- a/stdlib/source/lux/data/lazy.lux +++ b/stdlib/source/lux/data/lazy.lux @@ -1,11 +1,12 @@ (.module: [lux #* ["." io] - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad do)] - [equivalence (#+ Equivalence)] + [equivalence (#+ Equivalence)]] + [control [concurrency ["." atom]]] [macro (#+ with-gensyms) diff --git a/stdlib/source/lux/data/maybe.lux b/stdlib/source/lux/data/maybe.lux index e00b89234..b96e014b3 100644 --- a/stdlib/source/lux/data/maybe.lux +++ b/stdlib/source/lux/data/maybe.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monoid (#+ Monoid)] ["." functor (#+ Functor)] [apply (#+ Apply)] diff --git a/stdlib/source/lux/data/name.lux b/stdlib/source/lux/data/name.lux index 286071169..59e004ea7 100644 --- a/stdlib/source/lux/data/name.lux +++ b/stdlib/source/lux/data/name.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [codec (#+ Codec)] hash] diff --git a/stdlib/source/lux/data/number.lux b/stdlib/source/lux/data/number.lux index e6b169fc4..0577258ca 100644 --- a/stdlib/source/lux/data/number.lux +++ b/stdlib/source/lux/data/number.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [codec (#+ Codec)]] [data ["." error (#+ Error)] diff --git a/stdlib/source/lux/data/number/complex.lux b/stdlib/source/lux/data/number/complex.lux index d8334d104..6c057ffb1 100644 --- a/stdlib/source/lux/data/number/complex.lux +++ b/stdlib/source/lux/data/number/complex.lux @@ -1,11 +1,12 @@ (.module: {#.doc "Complex arithmetic."} [lux #* ["." math] - [control + [abstract [equivalence (#+ Equivalence)] number codec - ["M" monad (#+ Monad do)] + ["M" monad (#+ Monad do)]] + [control ["p" parser]] [data ["." maybe] diff --git a/stdlib/source/lux/data/number/frac.lux b/stdlib/source/lux/data/number/frac.lux index f49f73039..790aee05b 100644 --- a/stdlib/source/lux/data/number/frac.lux +++ b/stdlib/source/lux/data/number/frac.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [hash (#+ Hash)] [number (#+ Number)] [monoid (#+ Monoid)] diff --git a/stdlib/source/lux/data/number/i64.lux b/stdlib/source/lux/data/number/i64.lux index ffce20b4c..dbc58b004 100644 --- a/stdlib/source/lux/data/number/i64.lux +++ b/stdlib/source/lux/data/number/i64.lux @@ -1,6 +1,6 @@ (.module: [lux (#- and or not) - [control + [abstract [monoid (#+ Monoid)]]]) (def: #export bits-per-byte 8) diff --git a/stdlib/source/lux/data/number/int.lux b/stdlib/source/lux/data/number/int.lux index f94049296..22b7aff23 100644 --- a/stdlib/source/lux/data/number/int.lux +++ b/stdlib/source/lux/data/number/int.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [hash (#+ Hash)] [number (#+ Number)] [enum (#+ Enum)] diff --git a/stdlib/source/lux/data/number/nat.lux b/stdlib/source/lux/data/number/nat.lux index c1f0ca420..5ca294df5 100644 --- a/stdlib/source/lux/data/number/nat.lux +++ b/stdlib/source/lux/data/number/nat.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [hash (#+ Hash)] [number (#+ Number)] [enum (#+ Enum)] diff --git a/stdlib/source/lux/data/number/ratio.lux b/stdlib/source/lux/data/number/ratio.lux index 49ce1f194..a501f9a1b 100644 --- a/stdlib/source/lux/data/number/ratio.lux +++ b/stdlib/source/lux/data/number/ratio.lux @@ -1,12 +1,13 @@ (.module: {#.doc "Rational numbers."} [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [order (#+ Order)] [monoid (#+ Monoid)] - number - codec - monad + [number (#+ Number)] + [codec (#+ Codec)] + [monad (#+ do)]] + [control ["p" parser]] [data ["." error] diff --git a/stdlib/source/lux/data/number/rev.lux b/stdlib/source/lux/data/number/rev.lux index bbb34c570..4738a72a0 100644 --- a/stdlib/source/lux/data/number/rev.lux +++ b/stdlib/source/lux/data/number/rev.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [hash (#+ Hash)] [number (#+ Number)] [enum (#+ Enum)] diff --git a/stdlib/source/lux/data/store.lux b/stdlib/source/lux/data/store.lux index 69ad7d734..36cc3e67d 100644 --- a/stdlib/source/lux/data/store.lux +++ b/stdlib/source/lux/data/store.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [functor (#+ Functor)] comonad] [type diff --git a/stdlib/source/lux/data/text.lux b/stdlib/source/lux/data/text.lux index 384d4e860..bf40c3ef7 100644 --- a/stdlib/source/lux/data/text.lux +++ b/stdlib/source/lux/data/text.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monoid (#+ Monoid)] [equivalence (#+ Equivalence)] [order (#+ Order)] @@ -25,18 +25,18 @@ (-> Char Text) (|>> (:coerce Int) "lux int char")) -(template [<name> <code>] +(template [<code> <name>] [(def: #export <name> (from-code <code>))] - [null 0] - [alarm 7] - [back-space 8] - [tab 9] - [new-line 10] - [vertical-tab 11] - [form-feed 12] - [carriage-return 13] - [double-quote 34] + [00 null] + [07 alarm] + [08 back-space] + [09 tab] + [10 new-line] + [11 vertical-tab] + [12 form-feed] + [13 carriage-return] + [34 double-quote] ) (def: #export (size x) diff --git a/stdlib/source/lux/data/text/encoding.lux b/stdlib/source/lux/data/text/encoding.lux index 8f59bd530..b4372471c 100644 --- a/stdlib/source/lux/data/text/encoding.lux +++ b/stdlib/source/lux/data/text/encoding.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [codec (#+ Codec)]] [data ["." error (#+ Error)]] diff --git a/stdlib/source/lux/data/text/format.lux b/stdlib/source/lux/data/text/format.lux index 0becf8633..a204e567b 100644 --- a/stdlib/source/lux/data/text/format.lux +++ b/stdlib/source/lux/data/text/format.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["p" parser]] [data ["." bit] diff --git a/stdlib/source/lux/data/text/lexer.lux b/stdlib/source/lux/data/text/lexer.lux index e5f19edf6..531d2ae64 100644 --- a/stdlib/source/lux/data/text/lexer.lux +++ b/stdlib/source/lux/data/text/lexer.lux @@ -1,7 +1,8 @@ (.module: [lux (#- or and not) + [abstract + [monad (#+ do Monad)]] [control - [monad (#+ do Monad)] ["p" parser] ["ex" exception (#+ exception:)]] [data diff --git a/stdlib/source/lux/data/text/regex.lux b/stdlib/source/lux/data/text/regex.lux index b94dbb73a..5e867b9b6 100644 --- a/stdlib/source/lux/data/text/regex.lux +++ b/stdlib/source/lux/data/text/regex.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + monad] [control - monad ["p" parser ("#@." monad)]] [data ["." product] diff --git a/stdlib/source/lux/data/text/unicode.lux b/stdlib/source/lux/data/text/unicode.lux index 11a98b358..a6fd13ebc 100644 --- a/stdlib/source/lux/data/text/unicode.lux +++ b/stdlib/source/lux/data/text/unicode.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." interval (#+ Interval)] [monoid (#+ Monoid)]] [data diff --git a/stdlib/source/lux/data/trace.lux b/stdlib/source/lux/data/trace.lux index 055d1758c..94e02ea6b 100644 --- a/stdlib/source/lux/data/trace.lux +++ b/stdlib/source/lux/data/trace.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." monoid (#+ Monoid)] [functor (#+ Functor)] comonad] diff --git a/stdlib/source/lux/function.lux b/stdlib/source/lux/function.lux index 65202e361..5a33a2aae 100644 --- a/stdlib/source/lux/function.lux +++ b/stdlib/source/lux/function.lux @@ -1,13 +1,14 @@ (.module: [lux #* - [control + [abstract [monoid (#+ Monoid)]]]) (def: #export identity {#.doc (doc "Identity function." "Does nothing to it's argument and just returns it." - (= (identity "foo") - "foo"))} + (let [value "foo"] + (is? (identity value) + value)))} (All [a] (-> a a)) (|>>)) diff --git a/stdlib/source/lux/host.js.lux b/stdlib/source/lux/host.js.lux index bf24adc38..aec050642 100644 --- a/stdlib/source/lux/host.js.lux +++ b/stdlib/source/lux/host.js.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + monad] [control - monad ["p" parser]] [data [collection diff --git a/stdlib/source/lux/host.jvm.lux b/stdlib/source/lux/host.jvm.lux index e4891f56b..b829e21c9 100644 --- a/stdlib/source/lux/host.jvm.lux +++ b/stdlib/source/lux/host.jvm.lux @@ -1,8 +1,9 @@ (.module: [lux (#- type) + [abstract + ["." monad (#+ Monad do)] + ["." enum]] [control - ["." monad (#+ do Monad)] - ["." enum] ["p" parser]] [data ["." maybe] diff --git a/stdlib/source/lux/host/jvm/attribute.lux b/stdlib/source/lux/host/jvm/attribute.lux index 1bef206da..bcd3a3734 100644 --- a/stdlib/source/lux/host/jvm/attribute.lux +++ b/stdlib/source/lux/host/jvm/attribute.lux @@ -1,8 +1,9 @@ (.module: [lux (#- Info Code' Code) - [control + [abstract ["." equivalence (#+ Equivalence)] - [monad (#+ do)] + [monad (#+ do)]] + [control ["." state (#+ State)]] [data [format diff --git a/stdlib/source/lux/host/jvm/class.lux b/stdlib/source/lux/host/jvm/class.lux index 2474ffa69..6fb6f48d4 100644 --- a/stdlib/source/lux/host/jvm/class.lux +++ b/stdlib/source/lux/host/jvm/class.lux @@ -1,10 +1,11 @@ (.module: [lux #* - [control + [abstract ["." equivalence (#+ Equivalence)] [monoid (#+)] + ["." monad (#+ do)]] + [control [parser (#+)] - ["." monad (#+ do)] ["." state (#+ State)]] [data [number (#+) diff --git a/stdlib/source/lux/host/jvm/constant.lux b/stdlib/source/lux/host/jvm/constant.lux index d9fcc2731..3af24af55 100644 --- a/stdlib/source/lux/host/jvm/constant.lux +++ b/stdlib/source/lux/host/jvm/constant.lux @@ -1,9 +1,10 @@ (.module: [lux #* - [control + [abstract [monad (#+ do)] - ["." parser] ["." equivalence (#+ Equivalence)]] + [control + ["." parser]] [data [number ["." int] diff --git a/stdlib/source/lux/host/jvm/constant/pool.lux b/stdlib/source/lux/host/jvm/constant/pool.lux index 846c0fa18..a304d5ac4 100644 --- a/stdlib/source/lux/host/jvm/constant/pool.lux +++ b/stdlib/source/lux/host/jvm/constant/pool.lux @@ -1,8 +1,9 @@ (.module: [lux #* - [control + [abstract ["." equivalence (#+ Equivalence)] - [monad (#+ do)] + [monad (#+ do)]] + [control ["." state (#+ State)]] [data ["." text ("#;." equivalence)] diff --git a/stdlib/source/lux/host/jvm/constant/tag.lux b/stdlib/source/lux/host/jvm/constant/tag.lux index 0339489f9..71e75f40b 100644 --- a/stdlib/source/lux/host/jvm/constant/tag.lux +++ b/stdlib/source/lux/host/jvm/constant/tag.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)]] [data [format diff --git a/stdlib/source/lux/host/jvm/encoding.lux b/stdlib/source/lux/host/jvm/encoding.lux index 7d7fb636d..33ac427c2 100644 --- a/stdlib/source/lux/host/jvm/encoding.lux +++ b/stdlib/source/lux/host/jvm/encoding.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + [equivalence (#+ Equivalence)]] [control - [equivalence (#+ Equivalence)] ["." parser ("#;." functor)]] [data [number diff --git a/stdlib/source/lux/host/jvm/field.lux b/stdlib/source/lux/host/jvm/field.lux index f40800790..930ca97d8 100644 --- a/stdlib/source/lux/host/jvm/field.lux +++ b/stdlib/source/lux/host/jvm/field.lux @@ -1,10 +1,11 @@ (.module: [lux (#- static) - [control + [abstract ["." equivalence (#+ Equivalence)] [monoid (#+)] + ["." monad (#+ do)]] + [control [parser (#+)] - ["." monad (#+ do)] ["." state (#+ State)]] [data [number (#+) diff --git a/stdlib/source/lux/host/jvm/index.lux b/stdlib/source/lux/host/jvm/index.lux index c7174f9d4..3a425dd32 100644 --- a/stdlib/source/lux/host/jvm/index.lux +++ b/stdlib/source/lux/host/jvm/index.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." equivalence (#+ Equivalence)]] [data [format diff --git a/stdlib/source/lux/host/jvm/loader.jvm.lux b/stdlib/source/lux/host/jvm/loader.jvm.lux index 03edd60cf..22e8a8352 100644 --- a/stdlib/source/lux/host/jvm/loader.jvm.lux +++ b/stdlib/source/lux/host/jvm/loader.jvm.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["ex" exception (#+ exception:)] [concurrency ["." atom (#+ Atom)]]] diff --git a/stdlib/source/lux/host/jvm/method.lux b/stdlib/source/lux/host/jvm/method.lux index e0ef63d3e..e4f3cdea2 100644 --- a/stdlib/source/lux/host/jvm/method.lux +++ b/stdlib/source/lux/host/jvm/method.lux @@ -1,10 +1,11 @@ (.module: [lux (#- static) - [control + [abstract ["." equivalence (#+ Equivalence)] [monoid (#+)] + ["." monad (#+ do)]] + [control [parser (#+)] - ["." monad (#+ do)] ["." state (#+ State)]] [data [number (#+) diff --git a/stdlib/source/lux/host/jvm/modifier.lux b/stdlib/source/lux/host/jvm/modifier.lux index e25e14b78..ac8d1b201 100644 --- a/stdlib/source/lux/host/jvm/modifier.lux +++ b/stdlib/source/lux/host/jvm/modifier.lux @@ -1,8 +1,9 @@ (.module: [lux #* - [control + [abstract ["." equivalence] - ["." monoid] + ["." monoid]] + [control ["." parser]] [data ["." number diff --git a/stdlib/source/lux/host/jvm/modifier/inner.lux b/stdlib/source/lux/host/jvm/modifier/inner.lux index 9f57965d0..2980ef6e4 100644 --- a/stdlib/source/lux/host/jvm/modifier/inner.lux +++ b/stdlib/source/lux/host/jvm/modifier/inner.lux @@ -1,8 +1,9 @@ (.module: [lux (#- static) - [control + [abstract [equivalence (#+)] - [monoid (#+)] + [monoid (#+)]] + [control [parser (#+)]] [data [number (#+) diff --git a/stdlib/source/lux/io.lux b/stdlib/source/lux/io.lux index 4da9fe897..4102ff9c4 100644 --- a/stdlib/source/lux/io.lux +++ b/stdlib/source/lux/io.lux @@ -1,6 +1,6 @@ (.module: {#.doc "A method for abstracting I/O and effectful computations to make it safe while writing pure functional code."} [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] [monad (#+ Monad do)]] diff --git a/stdlib/source/lux/locale.lux b/stdlib/source/lux/locale.lux index 3d0f3e532..1d6a4385f 100644 --- a/stdlib/source/lux/locale.lux +++ b/stdlib/source/lux/locale.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [hash (#+ Hash)]] [data diff --git a/stdlib/source/lux/locale/language.lux b/stdlib/source/lux/locale/language.lux index 1cfa9dd82..dbda89f73 100644 --- a/stdlib/source/lux/locale/language.lux +++ b/stdlib/source/lux/locale/language.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [hash (#+ Hash)]] [data diff --git a/stdlib/source/lux/locale/territory.lux b/stdlib/source/lux/locale/territory.lux index b37148bb2..dfd06f8c8 100644 --- a/stdlib/source/lux/locale/territory.lux +++ b/stdlib/source/lux/locale/territory.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [hash (#+ Hash)]] [data diff --git a/stdlib/source/lux/macro.lux b/stdlib/source/lux/macro.lux index 059351420..a3014c649 100644 --- a/stdlib/source/lux/macro.lux +++ b/stdlib/source/lux/macro.lux @@ -1,6 +1,6 @@ (.module: {#.doc "Functions for extracting information from the state of the compiler."} [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] ["." monad (#+ Monad do)]] diff --git a/stdlib/source/lux/macro/code.lux b/stdlib/source/lux/macro/code.lux index 84f08e5f1..ae7ba555c 100644 --- a/stdlib/source/lux/macro/code.lux +++ b/stdlib/source/lux/macro/code.lux @@ -1,6 +1,6 @@ (.module: [lux (#- nat int rev) - [control + [abstract ["." equivalence (#+ Equivalence)]] [data ["." bit] diff --git a/stdlib/source/lux/macro/poly.lux b/stdlib/source/lux/macro/poly.lux index 4f5cd09a0..31b293144 100644 --- a/stdlib/source/lux/macro/poly.lux +++ b/stdlib/source/lux/macro/poly.lux @@ -1,8 +1,9 @@ (.module: [lux (#- function) - [control + [abstract ["." monad (#+ Monad do)] - [equivalence] + [equivalence]] + [control ["p" parser] ["ex" exception (#+ exception:)]] ["." function] diff --git a/stdlib/source/lux/macro/poly/equivalence.lux b/stdlib/source/lux/macro/poly/equivalence.lux index cc0b79234..c39ad9412 100644 --- a/stdlib/source/lux/macro/poly/equivalence.lux +++ b/stdlib/source/lux/macro/poly/equivalence.lux @@ -1,8 +1,9 @@ (.module: [lux #* + [abstract + [monad (#+ Monad do)] + ["/" equivalence]] [control - [monad (#+ do Monad)] - ["eq" equivalence] ["p" parser]] [data ["." product] @@ -45,7 +46,7 @@ inputT poly.peek #let [@Equivalence (: (-> Type Code) (function (_ type) - (` ((~! eq.Equivalence) (~ (poly.to-code *env* type))))))]] + (` ((~! /.Equivalence) (~ (poly.to-code *env* type))))))]] ($_ p.either ## Basic types (~~ (template [<matcher> <eq>] @@ -135,8 +136,8 @@ [[g!self bodyC] (poly.recursive equivalence) #let [g!_ (code.local-identifier "_____________")]] (wrap (` (: (~ (@Equivalence inputT)) - ((~! eq.rec) (.function ((~ g!_) (~ g!self)) - (~ bodyC))))))) + ((~! /.rec) (.function ((~ g!_) (~ g!self)) + (~ bodyC))))))) poly.recursive-self ## Type applications (do @ @@ -148,8 +149,8 @@ (do @ [[funcC varsC bodyC] (poly.polymorphic equivalence)] (wrap (` (: (All [(~+ varsC)] - (-> (~+ (list@map (|>> (~) ((~! eq.Equivalence)) (`)) varsC)) - ((~! eq.Equivalence) ((~ (poly.to-code *env* inputT)) (~+ varsC))))) + (-> (~+ (list@map (|>> (~) ((~! /.Equivalence)) (`)) varsC)) + ((~! /.Equivalence) ((~ (poly.to-code *env* inputT)) (~+ varsC))))) (function ((~ funcC) (~+ varsC)) (~ bodyC)))))) poly.recursive-call diff --git a/stdlib/source/lux/macro/poly/functor.lux b/stdlib/source/lux/macro/poly/functor.lux index 6252378eb..947f08ac8 100644 --- a/stdlib/source/lux/macro/poly/functor.lux +++ b/stdlib/source/lux/macro/poly/functor.lux @@ -1,8 +1,9 @@ (.module: [lux #* + [abstract + [monad (#+ Monad do)] + ["." functor]] [control - [monad (#+ do Monad)] - ["." functor] ["p" parser]] [data ["." product] diff --git a/stdlib/source/lux/macro/poly/json.lux b/stdlib/source/lux/macro/poly/json.lux index cc5f3b5c9..f397de2a2 100644 --- a/stdlib/source/lux/macro/poly/json.lux +++ b/stdlib/source/lux/macro/poly/json.lux @@ -1,9 +1,10 @@ (.module: {#.doc "Codecs for values in the JSON format."} [lux #* - [control + [abstract [monad (#+ Monad do)] [equivalence (#+ Equivalence)] - ["." codec] + ["." codec]] + [control ["p" parser]] [data ["." bit] diff --git a/stdlib/source/lux/macro/syntax.lux b/stdlib/source/lux/macro/syntax.lux index 08bb3c978..90d8b0938 100644 --- a/stdlib/source/lux/macro/syntax.lux +++ b/stdlib/source/lux/macro/syntax.lux @@ -1,8 +1,9 @@ (.module: [lux (#- nat int rev) - [control + [abstract ["." monad (#+ Monad do)] - [equivalence (#+ Equivalence)] + [equivalence (#+ Equivalence)]] + [control ["p" parser]] [data ["." bit] diff --git a/stdlib/source/lux/macro/syntax/common/reader.lux b/stdlib/source/lux/macro/syntax/common/reader.lux index 6ad2e4d46..99277857f 100644 --- a/stdlib/source/lux/macro/syntax/common/reader.lux +++ b/stdlib/source/lux/macro/syntax/common/reader.lux @@ -1,7 +1,8 @@ (.module: {#.doc "Commons syntax readers."} [lux #* + [abstract + monad] [control - monad ["p" parser ("#;." monad)]] [data ["." name ("#;." equivalence)] diff --git a/stdlib/source/lux/macro/template.lux b/stdlib/source/lux/macro/template.lux index a69d656f6..ad1600856 100644 --- a/stdlib/source/lux/macro/template.lux +++ b/stdlib/source/lux/macro/template.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] ["p" parser ("#@." functor)]] [data ["." bit ("#@." codec)] diff --git a/stdlib/source/lux/math/infix.lux b/stdlib/source/lux/math/infix.lux index e2cfc455c..ecb309d13 100644 --- a/stdlib/source/lux/math/infix.lux +++ b/stdlib/source/lux/math/infix.lux @@ -1,7 +1,8 @@ (.module: {#.doc "Common mathematical constants and functions."} [lux #* + [abstract + monad] [control - monad ["p" parser ("#;." functor)]] [data ["." product] diff --git a/stdlib/source/lux/math/logic/fuzzy.lux b/stdlib/source/lux/math/logic/fuzzy.lux index 99bc2f8db..f27c51ec7 100644 --- a/stdlib/source/lux/math/logic/fuzzy.lux +++ b/stdlib/source/lux/math/logic/fuzzy.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [predicate (#+ Predicate)]] [data [collection diff --git a/stdlib/source/lux/math/modular.lux b/stdlib/source/lux/math/modular.lux index 866d3c99f..24c7b0e72 100644 --- a/stdlib/source/lux/math/modular.lux +++ b/stdlib/source/lux/math/modular.lux @@ -1,10 +1,11 @@ (.module: [lux #* - [control - ["ex" exception (#+ exception:)] - ["p" parser] + [abstract [codec (#+ Codec)] [monad (#+ do)]] + [control + ["ex" exception (#+ exception:)] + ["p" parser]] [data ["." error (#+ Error)] [number diff --git a/stdlib/source/lux/math/random.lux b/stdlib/source/lux/math/random.lux index 47ddb7fa2..ef1ed3e37 100644 --- a/stdlib/source/lux/math/random.lux +++ b/stdlib/source/lux/math/random.lux @@ -1,6 +1,6 @@ (.module: {#.doc "Pseudo-random number generation (PRNG) algorithms."} [lux (#- or and list i64 nat int rev char) - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] ["." monad (#+ do Monad)] diff --git a/stdlib/source/lux/test.lux b/stdlib/source/lux/test.lux index 9f261dbc8..58d7654d3 100644 --- a/stdlib/source/lux/test.lux +++ b/stdlib/source/lux/test.lux @@ -1,7 +1,8 @@ (.module: {#.doc "Tools for unit & property-based/generative testing."} [lux (#- and) + [abstract + ["." monad (#+ Monad do)]] [control - ["." monad (#+ Monad do)] ["ex" exception (#+ exception:)] [concurrency ["." promise (#+ Promise) ("#;." monad)]]] diff --git a/stdlib/source/lux/time/date.lux b/stdlib/source/lux/time/date.lux index 9ca3b8939..994b95dbe 100644 --- a/stdlib/source/lux/time/date.lux +++ b/stdlib/source/lux/time/date.lux @@ -1,12 +1,13 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [order (#+ Order)] [enum (#+ Enum)] codec - ["p" parser ("#@." functor)] [monad (#+ do)]] + [control + ["p" parser ("#@." functor)]] [data ["." error (#+ Error)] ["." maybe] diff --git a/stdlib/source/lux/time/day.lux b/stdlib/source/lux/time/day.lux index 53aa37483..87c603937 100644 --- a/stdlib/source/lux/time/day.lux +++ b/stdlib/source/lux/time/day.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [order (#+ Order)] [enum (#+ Enum)]]]) diff --git a/stdlib/source/lux/time/duration.lux b/stdlib/source/lux/time/duration.lux index cbad3c694..887a074f7 100644 --- a/stdlib/source/lux/time/duration.lux +++ b/stdlib/source/lux/time/duration.lux @@ -1,12 +1,13 @@ (.module: [lux #* - [control + [abstract equivalence [order (#+ Order)] codec [monoid (#+ Monoid)] - ["p" parser] [monad (#+ do)]] + [control + ["p" parser]] [data [number ["." nat ("#;." decimal)] diff --git a/stdlib/source/lux/time/instant.lux b/stdlib/source/lux/time/instant.lux index 4231cc6c1..866616ca1 100644 --- a/stdlib/source/lux/time/instant.lux +++ b/stdlib/source/lux/time/instant.lux @@ -1,12 +1,13 @@ (.module: [lux #* [io (#+ IO io)] - [control + [abstract [equivalence (#+ Equivalence)] [order (#+ Order)] [enum (#+ Enum)] codec - [monad (#+ do Monad)] + [monad (#+ do Monad)]] + [control ["p" parser]] [data ["." error (#+ Error)] diff --git a/stdlib/source/lux/time/month.lux b/stdlib/source/lux/time/month.lux index 2863220da..3911d7849 100644 --- a/stdlib/source/lux/time/month.lux +++ b/stdlib/source/lux/time/month.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] [order (#+ Order)] [enum (#+ Enum)]]]) diff --git a/stdlib/source/lux/tool/compiler/analysis.lux b/stdlib/source/lux/tool/compiler/analysis.lux index c2a6d0cb7..2f173007b 100644 --- a/stdlib/source/lux/tool/compiler/analysis.lux +++ b/stdlib/source/lux/tool/compiler/analysis.lux @@ -1,6 +1,6 @@ (.module: [lux (#- nat int rev) - [control + [abstract [monad (#+ do)]] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/meta/archive.lux b/stdlib/source/lux/tool/compiler/meta/archive.lux index e9ecee8cd..46a6ce0a6 100644 --- a/stdlib/source/lux/tool/compiler/meta/archive.lux +++ b/stdlib/source/lux/tool/compiler/meta/archive.lux @@ -1,9 +1,10 @@ (.module: [lux (#- Module) - [control - ["ex" exception (#+ exception:)] + [abstract ["." equivalence (#+ Equivalence)] ["." monad (#+ do)]] + [control + ["ex" exception (#+ exception:)]] [data ["." error (#+ Error)] ["." name] diff --git a/stdlib/source/lux/tool/compiler/meta/archive/signature.lux b/stdlib/source/lux/tool/compiler/meta/archive/signature.lux index b8b9c43b2..7c9f0cbe2 100644 --- a/stdlib/source/lux/tool/compiler/meta/archive/signature.lux +++ b/stdlib/source/lux/tool/compiler/meta/archive/signature.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." equivalence (#+ Equivalence)]] [data ["." name] diff --git a/stdlib/source/lux/tool/compiler/phase.lux b/stdlib/source/lux/tool/compiler/phase.lux index 3ae66af16..09657c3cf 100644 --- a/stdlib/source/lux/tool/compiler/phase.lux +++ b/stdlib/source/lux/tool/compiler/phase.lux @@ -1,9 +1,10 @@ (.module: [lux #* + [abstract + [monad (#+ do)]] [control ["." state] - ["ex" exception (#+ Exception exception:)] - [monad (#+ do)]] + ["ex" exception (#+ Exception exception:)]] [data ["." product] ["." error (#+ Error) ("#;." functor)] diff --git a/stdlib/source/lux/tool/compiler/phase/extension.lux b/stdlib/source/lux/tool/compiler/phase/extension.lux index 7ce75f6e5..87e7474d4 100644 --- a/stdlib/source/lux/tool/compiler/phase/extension.lux +++ b/stdlib/source/lux/tool/compiler/phase/extension.lux @@ -1,7 +1,8 @@ (.module: [lux (#- Name) + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["ex" exception (#+ exception:)]] [data ["." error (#+ Error)] diff --git a/stdlib/source/lux/tool/compiler/phase/extension/bundle.lux b/stdlib/source/lux/tool/compiler/phase/extension/bundle.lux index ad99db848..28015b956 100644 --- a/stdlib/source/lux/tool/compiler/phase/extension/bundle.lux +++ b/stdlib/source/lux/tool/compiler/phase/extension/bundle.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monad (#+ do)]] [data ["." text diff --git a/stdlib/source/lux/tool/compiler/phase/generation.lux b/stdlib/source/lux/tool/compiler/phase/generation.lux index f0609d666..3053752fe 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation.lux @@ -1,7 +1,8 @@ (.module: [lux (#- Module) + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["." exception (#+ exception:)]] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/extension.lux b/stdlib/source/lux/tool/compiler/phase/generation/extension.lux index 681fd35f8..7c08e94cc 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/extension.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/extension.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." monad (#+ do)]] [data [collection diff --git a/stdlib/source/lux/tool/compiler/phase/generation/js.lux b/stdlib/source/lux/tool/compiler/phase/generation/js.lux index 29c95ff43..37a8d1bc6 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/js.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/js.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monad (#+ do)]]] [/ [runtime (#+ Phase)] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/js/case.lux b/stdlib/source/lux/tool/compiler/phase/generation/js/case.lux index 4561e5e84..86c7197ec 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/js/case.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/js/case.lux @@ -1,7 +1,8 @@ (.module: [lux (#- case let if) + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["ex" exception (#+ exception:)]] [data ["." text diff --git a/stdlib/source/lux/tool/compiler/phase/generation/js/extension/common.lux b/stdlib/source/lux/tool/compiler/phase/generation/js/extension/common.lux index 2ee78f394..3cc75105f 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/js/extension/common.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/js/extension/common.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." monad (#+ do)]] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/js/extension/host.lux b/stdlib/source/lux/tool/compiler/phase/generation/js/extension/host.lux index 70f581d69..f78daf215 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/js/extension/host.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/js/extension/host.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." monad (#+ do)]] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/js/function.lux b/stdlib/source/lux/tool/compiler/phase/generation/js/function.lux index 10a53986f..4839c9978 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/js/function.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/js/function.lux @@ -1,7 +1,8 @@ (.module: [lux (#- function) + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] pipe] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/js/loop.lux b/stdlib/source/lux/tool/compiler/phase/generation/js/loop.lux index d905db9a2..9ab04cae6 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/js/loop.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/js/loop.lux @@ -1,6 +1,6 @@ (.module: [lux (#- Scope) - [control + [abstract ["." monad (#+ do)]] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/js/runtime.lux b/stdlib/source/lux/tool/compiler/phase/generation/js/runtime.lux index 821633e50..97eee0025 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/js/runtime.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/js/runtime.lux @@ -1,8 +1,9 @@ (.module: [lux #* ["." function] + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["p" parser]] [data [number (#+ hex) diff --git a/stdlib/source/lux/tool/compiler/phase/generation/js/structure.lux b/stdlib/source/lux/tool/compiler/phase/generation/js/structure.lux index c6b413afb..a70376569 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/js/structure.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/js/structure.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." monad (#+ do)]] [host ["_" js (#+ Expression)]]] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/python.lux b/stdlib/source/lux/tool/compiler/phase/generation/python.lux index 29c95ff43..37a8d1bc6 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/python.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/python.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monad (#+ do)]]] [/ [runtime (#+ Phase)] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/python/case.lux b/stdlib/source/lux/tool/compiler/phase/generation/python/case.lux index b1f53a8b2..359cfdb3b 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/python/case.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/python/case.lux @@ -1,7 +1,8 @@ (.module: [lux (#- case let if) + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["ex" exception (#+ exception:)]] [data ["." text diff --git a/stdlib/source/lux/tool/compiler/phase/generation/python/extension/common.lux b/stdlib/source/lux/tool/compiler/phase/generation/python/extension/common.lux index 7ff70b393..46cd6d79e 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/python/extension/common.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/python/extension/common.lux @@ -1,7 +1,7 @@ (.module: [lux #* ["." function] - [control + [abstract ["." monad (#+ do)]] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/python/extension/host.lux b/stdlib/source/lux/tool/compiler/phase/generation/python/extension/host.lux index 92887899b..242022c87 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/python/extension/host.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/python/extension/host.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." monad (#+ do)]] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/python/function.lux b/stdlib/source/lux/tool/compiler/phase/generation/python/function.lux index 3ba95e0f3..a5f918dc1 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/python/function.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/python/function.lux @@ -1,7 +1,8 @@ (.module: [lux (#- function) + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] pipe] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/python/loop.lux b/stdlib/source/lux/tool/compiler/phase/generation/python/loop.lux index 7666319bf..12d83b756 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/python/loop.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/python/loop.lux @@ -1,6 +1,6 @@ (.module: [lux (#- Scope) - [control + [abstract ["." monad (#+ do)]] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/python/runtime.lux b/stdlib/source/lux/tool/compiler/phase/generation/python/runtime.lux index 36184e21c..d10434000 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/python/runtime.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/python/runtime.lux @@ -1,8 +1,9 @@ (.module: [lux (#- inc) ["." function] + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["p" parser]] [data [number (#+ hex) diff --git a/stdlib/source/lux/tool/compiler/phase/generation/python/structure.lux b/stdlib/source/lux/tool/compiler/phase/generation/python/structure.lux index 6daf5e532..93a83883d 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/python/structure.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/python/structure.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." monad (#+ do)]] [host ["_" python (#+ Expression)]]] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/scheme.lux b/stdlib/source/lux/tool/compiler/phase/generation/scheme.lux index 5da2a016e..2ccf4f45a 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/scheme.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/scheme.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract [monad (#+ do)]]] [/ [runtime (#+ Phase)] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/scheme/case.jvm.lux b/stdlib/source/lux/tool/compiler/phase/generation/scheme/case.jvm.lux index 49733e6f3..d68abbdd7 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/scheme/case.jvm.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/scheme/case.jvm.lux @@ -1,7 +1,8 @@ (.module: [lux (#- case let if) + [abstract + [monad (#+ do)]] [control - [monad (#+ do)] ["ex" exception (#+ exception:)]] [data ["." number] @@ -97,9 +98,9 @@ (def: (pm-catch handler) (-> Expression Computation) (_.lambda [(list @alt-error) #.None] - (_.if (|> @alt-error (_.eqv?/2 pm-error)) - handler - (_.raise/1 @alt-error)))) + (_.if (|> @alt-error (_.eqv?/2 pm-error)) + handler + (_.raise/1 @alt-error)))) (def: (pattern-matching' generate pathP) (-> Phase Path (Operation Expression)) diff --git a/stdlib/source/lux/tool/compiler/phase/generation/scheme/extension/common.jvm.lux b/stdlib/source/lux/tool/compiler/phase/generation/scheme/extension/common.jvm.lux index 0de327e23..cb96a5718 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/scheme/extension/common.jvm.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/scheme/extension/common.jvm.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] ["ex" exception (#+ exception:)]] [data ["e" error] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/scheme/function.jvm.lux b/stdlib/source/lux/tool/compiler/phase/generation/scheme/function.jvm.lux index 2cbb89825..28bfd36ba 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/scheme/function.jvm.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/scheme/function.jvm.lux @@ -1,7 +1,8 @@ (.module: [lux (#- function) + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] pipe] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/scheme/loop.jvm.lux b/stdlib/source/lux/tool/compiler/phase/generation/scheme/loop.jvm.lux index 7064c8301..6922806e2 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/scheme/loop.jvm.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/scheme/loop.jvm.lux @@ -1,6 +1,6 @@ (.module: [lux (#- Scope) - [control + [abstract ["." monad (#+ do)]] [data ["." product] diff --git a/stdlib/source/lux/tool/compiler/phase/generation/scheme/runtime.jvm.lux b/stdlib/source/lux/tool/compiler/phase/generation/scheme/runtime.jvm.lux index d3c949df1..1e891c006 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/scheme/runtime.jvm.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/scheme/runtime.jvm.lux @@ -1,9 +1,10 @@ (.module: [lux #* ["." function] - [control - ["p" parser ("#;." monad)] + [abstract [monad (#+ do)]] + [control + ["p" parser ("#;." monad)]] [data [number (#+ hex)] [text diff --git a/stdlib/source/lux/tool/compiler/phase/generation/scheme/structure.jvm.lux b/stdlib/source/lux/tool/compiler/phase/generation/scheme/structure.jvm.lux index 7419ad239..e44ab508b 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation/scheme/structure.jvm.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation/scheme/structure.jvm.lux @@ -1,6 +1,6 @@ (.module: [lux #* - [control + [abstract ["." monad (#+ do)]] [host ["_" scheme (#+ Expression)]]] diff --git a/stdlib/source/lux/tool/compiler/phase/synthesis/case.lux b/stdlib/source/lux/tool/compiler/phase/synthesis/case.lux index 7da1a41c7..ea8615949 100644 --- a/stdlib/source/lux/tool/compiler/phase/synthesis/case.lux +++ b/stdlib/source/lux/tool/compiler/phase/synthesis/case.lux @@ -1,9 +1,10 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] - [pipe (#+ when> new> case>)] ["." monad (#+ do)]] + [control + [pipe (#+ when> new> case>)]] [data ["." product] ["." bit ("#@." equivalence)] diff --git a/stdlib/source/lux/tool/compiler/phase/synthesis/function.lux b/stdlib/source/lux/tool/compiler/phase/synthesis/function.lux index a1bc743c3..8d1b71d90 100644 --- a/stdlib/source/lux/tool/compiler/phase/synthesis/function.lux +++ b/stdlib/source/lux/tool/compiler/phase/synthesis/function.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] ["ex" exception (#+ exception:)]] [data ["." maybe] diff --git a/stdlib/source/lux/tool/compiler/phase/synthesis/loop.lux b/stdlib/source/lux/tool/compiler/phase/synthesis/loop.lux index 54bec7b03..0ac6cc12b 100644 --- a/stdlib/source/lux/tool/compiler/phase/synthesis/loop.lux +++ b/stdlib/source/lux/tool/compiler/phase/synthesis/loop.lux @@ -1,7 +1,8 @@ (.module: [lux (#- loop) + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] ["p" parser]] [data ["." maybe ("#;." monad)] diff --git a/stdlib/source/lux/tool/compiler/reference.lux b/stdlib/source/lux/tool/compiler/reference.lux index 7022b2496..20d819ef7 100644 --- a/stdlib/source/lux/tool/compiler/reference.lux +++ b/stdlib/source/lux/tool/compiler/reference.lux @@ -1,8 +1,9 @@ (.module: [lux #* - [control + [abstract [equivalence (#+ Equivalence)] - [hash (#+ Hash)] + [hash (#+ Hash)]] + [control pipe] [data [text diff --git a/stdlib/source/lux/tool/compiler/synthesis.lux b/stdlib/source/lux/tool/compiler/synthesis.lux index 39b62ac88..d12c8c3ea 100644 --- a/stdlib/source/lux/tool/compiler/synthesis.lux +++ b/stdlib/source/lux/tool/compiler/synthesis.lux @@ -1,8 +1,9 @@ (.module: [lux (#- i64 Scope) - [control + [abstract [monad (#+ do)] - [equivalence (#+ Equivalence)] + [equivalence (#+ Equivalence)]] + [control ["ex" exception (#+ exception:)]] [data ["." bit ("#;." equivalence)] diff --git a/stdlib/source/lux/type.lux b/stdlib/source/lux/type.lux index 217b22abc..031e5025d 100644 --- a/stdlib/source/lux/type.lux +++ b/stdlib/source/lux/type.lux @@ -1,8 +1,9 @@ (.module: {#.doc "Basic functionality for working with types."} [lux (#- function) - [control + [abstract [equivalence (#+ Equivalence)] - [monad (#+ Monad do)] + [monad (#+ Monad do)]] + [control ["p" parser]] [data ["." text ("#;." monoid equivalence)] diff --git a/stdlib/source/lux/type/abstract.lux b/stdlib/source/lux/type/abstract.lux index 1a45c6e56..d293c4083 100644 --- a/stdlib/source/lux/type/abstract.lux +++ b/stdlib/source/lux/type/abstract.lux @@ -1,7 +1,8 @@ (.module: [lux (#- Scope) + [abstract + [monad (#+ Monad do)]] [control - [monad (#+ Monad do)] ["p" parser ("#;." monad)] ["ex" exception (#+ exception:)]] [data diff --git a/stdlib/source/lux/type/check.lux b/stdlib/source/lux/type/check.lux index 636a1722e..359a0e3b0 100644 --- a/stdlib/source/lux/type/check.lux +++ b/stdlib/source/lux/type/check.lux @@ -1,9 +1,10 @@ (.module: {#.doc "Type-checking functionality."} [lux #* - [control + [abstract [functor (#+ Functor)] [apply (#+ Apply)] - ["." monad (#+ Monad do)] + ["." monad (#+ Monad do)]] + [control ["ex" exception (#+ exception:)]] [data ["." maybe] diff --git a/stdlib/source/lux/type/implicit.lux b/stdlib/source/lux/type/implicit.lux index 36d9b2e03..d8ce47c2c 100644 --- a/stdlib/source/lux/type/implicit.lux +++ b/stdlib/source/lux/type/implicit.lux @@ -1,8 +1,9 @@ (.module: [lux #* - [control + [abstract ["." monad (#+ do Monad)] - ["eq" equivalence] + ["eq" equivalence]] + [control ["p" parser]] [data ["." product] diff --git a/stdlib/source/lux/type/refinement.lux b/stdlib/source/lux/type/refinement.lux index 2444878b4..1c428fc23 100644 --- a/stdlib/source/lux/type/refinement.lux +++ b/stdlib/source/lux/type/refinement.lux @@ -1,6 +1,6 @@ (.module: [lux (#- type) - [control + [abstract [predicate (#+ Predicate)]] [type (#+ :by-example) ("#;." equivalence) abstract]]) diff --git a/stdlib/source/lux/type/resource.lux b/stdlib/source/lux/type/resource.lux index affcf4cfc..22d83defd 100644 --- a/stdlib/source/lux/type/resource.lux +++ b/stdlib/source/lux/type/resource.lux @@ -1,10 +1,11 @@ (.module: [lux #* + [abstract + ["." monad (#+ Monad do) + [indexed (#+ IxMonad)]]] [control ["p" parser] ["ex" exception (#+ exception:)] - ["." monad (#+ Monad do) - [indexed (#+ IxMonad)]] [concurrency ["." promise (#+ Promise)]]] [data diff --git a/stdlib/source/lux/type/unit.lux b/stdlib/source/lux/type/unit.lux index d28f3e841..a05b7c85c 100644 --- a/stdlib/source/lux/type/unit.lux +++ b/stdlib/source/lux/type/unit.lux @@ -1,12 +1,13 @@ ## TODO: Write tests ASAP. (.module: [lux #* - [control + [abstract [monad (#+ Monad do)] - ["p" parser] [equivalence (#+ Equivalence)] [order (#+ Order)] [enum (#+ Enum)]] + [control + ["p" parser]] [data [number ["r" ratio]] diff --git a/stdlib/source/lux/world/binary.lux b/stdlib/source/lux/world/binary.lux index e373937b9..f43edfa4f 100644 --- a/stdlib/source/lux/world/binary.lux +++ b/stdlib/source/lux/world/binary.lux @@ -1,9 +1,10 @@ (.module: [lux (#- i64) - [control + [abstract [monad (#+ do)] - ["ex" exception (#+ exception:)] [equivalence (#+ Equivalence)]] + [control + ["ex" exception (#+ exception:)]] [data ["." maybe] ["." error (#+ Error)] diff --git a/stdlib/source/lux/world/file.lux b/stdlib/source/lux/world/file.lux index 1ee35cd6f..c559c83e6 100644 --- a/stdlib/source/lux/world/file.lux +++ b/stdlib/source/lux/world/file.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + ["." monad (#+ Monad do)]] [control - ["." monad (#+ Monad do)] ["ex" exception (#+ Exception exception:)] [concurrency ["." promise (#+ Promise)]] diff --git a/stdlib/source/lux/world/net/tcp.jvm.lux b/stdlib/source/lux/world/net/tcp.jvm.lux index d72e24763..f9c72bff3 100644 --- a/stdlib/source/lux/world/net/tcp.jvm.lux +++ b/stdlib/source/lux/world/net/tcp.jvm.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + monad] [control - monad [concurrency ["." promise (#+ Promise Resolver)] ["." frp (#+ Channel Sink)]] diff --git a/stdlib/source/lux/world/net/udp.jvm.lux b/stdlib/source/lux/world/net/udp.jvm.lux index 01eb4772a..505871b56 100644 --- a/stdlib/source/lux/world/net/udp.jvm.lux +++ b/stdlib/source/lux/world/net/udp.jvm.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + monad] [control - monad ["ex" exception (#+ exception:)] [concurrency ["." promise (#+ Promise)]] diff --git a/stdlib/source/program/licentia.lux b/stdlib/source/program/licentia.lux index 87ec7a9eb..482777503 100644 --- a/stdlib/source/program/licentia.lux +++ b/stdlib/source/program/licentia.lux @@ -13,9 +13,10 @@ (.module: [lux #* + [abstract + [monad (#+ do)]] [control [remember (#+ to-do)] - [monad (#+ do)] ["." parser] [security ["!" capability]]] diff --git a/stdlib/source/program/scriptum.lux b/stdlib/source/program/scriptum.lux index 23b1d575b..37205402e 100644 --- a/stdlib/source/program/scriptum.lux +++ b/stdlib/source/program/scriptum.lux @@ -1,8 +1,9 @@ (.module: [lux #* + [abstract + ["." monad (#+ do)]] [control [pipe (#+ when>)] - ["." monad (#+ do)] ["ex" exception (#+ exception:)] [security ["!" capability]]] diff --git a/stdlib/source/test/licentia.lux b/stdlib/source/test/licentia.lux index 1526b8a04..7f623d26d 100644 --- a/stdlib/source/test/licentia.lux +++ b/stdlib/source/test/licentia.lux @@ -2,9 +2,8 @@ [lux #* [cli (#+ program:)] ["_" test (#+ Test)] + [abstract/monad (#+ do)] [io (#+ io)] - [control - [monad (#+ do)]] [data ["." bit ("#;." equivalence)] ["." maybe ("#;." functor)] diff --git a/stdlib/source/test/lux.lux b/stdlib/source/test/lux.lux index 4caf29c32..5b45d6e5e 100644 --- a/stdlib/source/test/lux.lux +++ b/stdlib/source/test/lux.lux @@ -12,7 +12,7 @@ ["/" lux #* [cli (#+ program:)] ["." io (#+ io)] - [control + [abstract [monad (#+ do)] [predicate (#+ Predicate)]] [data @@ -112,6 +112,7 @@ ["." / #_ ["#." cli] ["#." io] + ["#." abstract] ["#." control] ["#." data] ["#." macro] @@ -354,6 +355,8 @@ ..cross-platform-support) /cli.test /io.test + (<| (_.context "/abstract") + /abstract.test) (<| (_.context "/control") /control.test) (<| (_.context "/data") diff --git a/stdlib/source/test/lux/abstract.lux b/stdlib/source/test/lux/abstract.lux new file mode 100644 index 000000000..4d37ed458 --- /dev/null +++ b/stdlib/source/test/lux/abstract.lux @@ -0,0 +1,11 @@ +(.module: + [lux #* + ["_" test (#+ Test)]] + ["." / #_ + ["#." interval]]) + +(def: #export test + Test + ($_ _.and + /interval.test + )) diff --git a/stdlib/source/test/lux/control/apply.lux b/stdlib/source/test/lux/abstract/apply.lux index 881e5d127..a269810bb 100644 --- a/stdlib/source/test/lux/control/apply.lux +++ b/stdlib/source/test/lux/abstract/apply.lux @@ -1,7 +1,6 @@ (.module: [lux #* - [control - [monad (#+ do)]] + [abstract/monad (#+ do)] [data [text format]] diff --git a/stdlib/source/test/lux/control/codec.lux b/stdlib/source/test/lux/abstract/codec.lux index f8159838b..80203c237 100644 --- a/stdlib/source/test/lux/control/codec.lux +++ b/stdlib/source/test/lux/abstract/codec.lux @@ -1,8 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control - [monad (#+ do)]] + [abstract/monad (#+ do)] [data text/format ["." error]] diff --git a/stdlib/source/test/lux/control/enum.lux b/stdlib/source/test/lux/abstract/enum.lux index 5c7832260..63bbf97ad 100644 --- a/stdlib/source/test/lux/control/enum.lux +++ b/stdlib/source/test/lux/abstract/enum.lux @@ -3,8 +3,7 @@ data/text/format ["_" test (#+ Test)] ["." function] - [control - [monad (#+ do)]] + [abstract/monad (#+ do)] [math ["r" random (#+ Random)]]] {1 diff --git a/stdlib/source/test/lux/control/equivalence.lux b/stdlib/source/test/lux/abstract/equivalence.lux index 3e3b91a04..d9e61131f 100644 --- a/stdlib/source/test/lux/control/equivalence.lux +++ b/stdlib/source/test/lux/abstract/equivalence.lux @@ -1,8 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control - [monad (#+ do)]] + [abstract/monad (#+ do)] [data [text format]] diff --git a/stdlib/source/test/lux/control/fold.lux b/stdlib/source/test/lux/abstract/fold.lux index 7d7ea8d83..8dfe7fc4c 100644 --- a/stdlib/source/test/lux/control/fold.lux +++ b/stdlib/source/test/lux/abstract/fold.lux @@ -3,8 +3,7 @@ ["_" test (#+ Test)] data/text/format ["r" math/random] - [control - [monad (#+ do)]]] + [abstract/monad (#+ do)]] [// [functor (#+ Injection Comparison)]] {1 diff --git a/stdlib/source/test/lux/control/functor.lux b/stdlib/source/test/lux/abstract/functor.lux index 68c8db55b..cf3538575 100644 --- a/stdlib/source/test/lux/control/functor.lux +++ b/stdlib/source/test/lux/abstract/functor.lux @@ -3,7 +3,7 @@ ["_" test (#+ Test)] data/text/format ["r" math/random] - [control + [abstract [equivalence (#+ Equivalence)] [monad (#+ do)]] ["." function]] diff --git a/stdlib/source/test/lux/control/interval.lux b/stdlib/source/test/lux/abstract/interval.lux index 7502f88bc..cfc19f6a9 100644 --- a/stdlib/source/test/lux/control/interval.lux +++ b/stdlib/source/test/lux/abstract/interval.lux @@ -1,9 +1,13 @@ (.module: [lux #* ["_" test (#+ Test)] + [abstract/monad (#+ do)] + [abstract + {[0 #test] + [/ + ["$." equivalence]]}] [control - [pipe (#+ case>)] - [monad (#+ do)]] + [pipe (#+ case>)]] [data [number ["." nat]] @@ -15,12 +19,7 @@ [math ["r" random (#+ Random)]]] {1 - ["." / (#+ Interval) ("_@." equivalence)]} - {0 - [test - [lux - [control - ["$." equivalence]]]]}) + ["." / (#+ Interval) ("_@." equivalence)]}) (template [<name> <cmp>] [(def: #export <name> diff --git a/stdlib/source/test/lux/control/monad.lux b/stdlib/source/test/lux/abstract/monad.lux index 4382a260d..4382a260d 100644 --- a/stdlib/source/test/lux/control/monad.lux +++ b/stdlib/source/test/lux/abstract/monad.lux diff --git a/stdlib/source/test/lux/control/monoid.lux b/stdlib/source/test/lux/abstract/monoid.lux index b12262900..b526c3e58 100644 --- a/stdlib/source/test/lux/control/monoid.lux +++ b/stdlib/source/test/lux/abstract/monoid.lux @@ -3,8 +3,7 @@ data/text/format ["_" test (#+ Test)] ["." function] - [control - [monad (#+ do)]] + [abstract/monad (#+ do)] [math ["r" random (#+ Random)]]] {1 diff --git a/stdlib/source/test/lux/control/number.lux b/stdlib/source/test/lux/abstract/number.lux index 57bee6ee3..2d726dfed 100644 --- a/stdlib/source/test/lux/control/number.lux +++ b/stdlib/source/test/lux/abstract/number.lux @@ -1,8 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control - [monad (#+ do)]] + [abstract/monad (#+ do)] [data [text format]] diff --git a/stdlib/source/test/lux/control/order.lux b/stdlib/source/test/lux/abstract/order.lux index f18d110c2..535d774a7 100644 --- a/stdlib/source/test/lux/control/order.lux +++ b/stdlib/source/test/lux/abstract/order.lux @@ -1,8 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control - [monad (#+ do)]] + [abstract/monad (#+ do)] [data [text format]] diff --git a/stdlib/source/test/lux/cli.lux b/stdlib/source/test/lux/cli.lux index 361b447ee..ff7a3abb3 100644 --- a/stdlib/source/test/lux/cli.lux +++ b/stdlib/source/test/lux/cli.lux @@ -1,10 +1,10 @@ (.module: [lux #* data/text/format + ["M" abstract/monad (#+ Monad do)] ["_" test (#+ Test)] ["r" math/random] [control - ["M" monad (#+ Monad do)] pipe ["p" parser]] [data diff --git a/stdlib/source/test/lux/control.lux b/stdlib/source/test/lux/control.lux index 912729c42..341a119fe 100644 --- a/stdlib/source/test/lux/control.lux +++ b/stdlib/source/test/lux/control.lux @@ -4,7 +4,6 @@ ["." / #_ ["#." continuation] ["#." exception] - ["#." interval] ["#." parser] ["#." pipe] ["#." reader] @@ -44,7 +43,6 @@ ($_ _.and /continuation.test /exception.test - /interval.test /parser.test (<| (_.context "/pipe") /pipe.test) diff --git a/stdlib/source/test/lux/control/concurrency/actor.lux b/stdlib/source/test/lux/control/concurrency/actor.lux index 014e4d758..eff4d051d 100644 --- a/stdlib/source/test/lux/control/concurrency/actor.lux +++ b/stdlib/source/test/lux/control/concurrency/actor.lux @@ -2,8 +2,8 @@ [lux #* ["_" test (#+ Test)] ["." io (#+ IO io)] + [abstract/monad (#+ do)] [control - ["M" monad (#+ do Monad)] ["ex" exception] [concurrency ["." promise ("#;." monad)]]] diff --git a/stdlib/source/test/lux/control/concurrency/atom.lux b/stdlib/source/test/lux/control/concurrency/atom.lux index 29cc28ad4..455f8b00d 100644 --- a/stdlib/source/test/lux/control/concurrency/atom.lux +++ b/stdlib/source/test/lux/control/concurrency/atom.lux @@ -2,8 +2,7 @@ [lux #* ["_" test (#+ Test)] ["." io] - [control - [monad (#+ do)]] + [abstract/monad (#+ do)] data/text/format [math ["r" random]]] diff --git a/stdlib/source/test/lux/control/concurrency/frp.lux b/stdlib/source/test/lux/control/concurrency/frp.lux index 92e4838a8..7ac79b465 100644 --- a/stdlib/source/test/lux/control/concurrency/frp.lux +++ b/stdlib/source/test/lux/control/concurrency/frp.lux @@ -2,8 +2,8 @@ [lux #* ["_" test (#+ Test)] ["." io (#+ IO io)] + [abstract/monad (#+ do)] [control - ["." monad (#+ do)] [concurrency ["." promise ("#@." monad)] ["." atom (#+ Atom atom)]]] diff --git a/stdlib/source/test/lux/control/concurrency/promise.lux b/stdlib/source/test/lux/control/concurrency/promise.lux index 952e8fb7a..5a49f26fe 100644 --- a/stdlib/source/test/lux/control/concurrency/promise.lux +++ b/stdlib/source/test/lux/control/concurrency/promise.lux @@ -2,8 +2,8 @@ [lux #* ["_" test (#+ Test)] ["." io] + [abstract/monad (#+ do)] [control - [monad (#+ Monad do)] pipe] data/text/format [math diff --git a/stdlib/source/test/lux/control/concurrency/semaphore.lux b/stdlib/source/test/lux/control/concurrency/semaphore.lux index 4aa4b08a5..40bd81364 100644 --- a/stdlib/source/test/lux/control/concurrency/semaphore.lux +++ b/stdlib/source/test/lux/control/concurrency/semaphore.lux @@ -1,7 +1,8 @@ (.module: [lux #* + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] [concurrency ["/" semaphore] ["." promise (#+ Promise)] diff --git a/stdlib/source/test/lux/control/concurrency/stm.lux b/stdlib/source/test/lux/control/concurrency/stm.lux index 52107f6fe..9e3b9290c 100644 --- a/stdlib/source/test/lux/control/concurrency/stm.lux +++ b/stdlib/source/test/lux/control/concurrency/stm.lux @@ -2,8 +2,8 @@ [lux #* ["_" test (#+ Test)] ["." io (#+ IO)] + ["M" abstract/monad (#+ do Monad)] [control - ["M" monad (#+ do Monad)] [concurrency ["." atom (#+ Atom atom)] ["." process] diff --git a/stdlib/source/test/lux/control/continuation.lux b/stdlib/source/test/lux/control/continuation.lux index b676c67ff..571225ecc 100644 --- a/stdlib/source/test/lux/control/continuation.lux +++ b/stdlib/source/test/lux/control/continuation.lux @@ -1,7 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/control/exception.lux b/stdlib/source/test/lux/control/exception.lux index c56688af3..7b7d90dbf 100644 --- a/stdlib/source/test/lux/control/exception.lux +++ b/stdlib/source/test/lux/control/exception.lux @@ -1,7 +1,6 @@ (.module: [lux #* - [control - [monad (#+ do)]] + [abstract/monad (#+ do)] [data [text format]] diff --git a/stdlib/source/test/lux/control/parser.lux b/stdlib/source/test/lux/control/parser.lux index a5d8fb0c2..da6c0a381 100644 --- a/stdlib/source/test/lux/control/parser.lux +++ b/stdlib/source/test/lux/control/parser.lux @@ -1,7 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] [equivalence (#+ Equivalence)] {[0 #test] diff --git a/stdlib/source/test/lux/control/pipe.lux b/stdlib/source/test/lux/control/pipe.lux index fda914291..6f7b65a53 100644 --- a/stdlib/source/test/lux/control/pipe.lux +++ b/stdlib/source/test/lux/control/pipe.lux @@ -1,7 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)]] [data ["." identity] diff --git a/stdlib/source/test/lux/control/reader.lux b/stdlib/source/test/lux/control/reader.lux index 59763c0e8..aa639ce70 100644 --- a/stdlib/source/test/lux/control/reader.lux +++ b/stdlib/source/test/lux/control/reader.lux @@ -2,7 +2,7 @@ [lux #* ["." io (#+ IO)] ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/control/region.lux b/stdlib/source/test/lux/control/region.lux index cca103eac..a575e4250 100644 --- a/stdlib/source/test/lux/control/region.lux +++ b/stdlib/source/test/lux/control/region.lux @@ -1,8 +1,9 @@ (.module: [lux #* ["_" test (#+ Test)] + [abstract + ["." monad (#+ do)]] [control - ["." monad (#+ do)] ["." thread (#+ Thread)] ["ex" exception (#+ exception:)]] [data diff --git a/stdlib/source/test/lux/control/security/integrity.lux b/stdlib/source/test/lux/control/security/integrity.lux index ad9b67f4f..77e0505d6 100644 --- a/stdlib/source/test/lux/control/security/integrity.lux +++ b/stdlib/source/test/lux/control/security/integrity.lux @@ -1,7 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control + [abstract [hash (#+ Hash)] [monad (#+ do)] {[0 #test] diff --git a/stdlib/source/test/lux/control/security/privacy.lux b/stdlib/source/test/lux/control/security/privacy.lux index 3bc41e6a9..3b167e0d2 100644 --- a/stdlib/source/test/lux/control/security/privacy.lux +++ b/stdlib/source/test/lux/control/security/privacy.lux @@ -1,16 +1,17 @@ (.module: [lux #* ["_" test (#+ Test)] - [control + [abstract [hash (#+ Hash)] [monad (#+ do)] - [security - ["!" capability]] {[0 #test] [/ ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]}] + [control + [security + ["!" capability]]] [data ["." text ("#;." equivalence) format]] diff --git a/stdlib/source/test/lux/control/state.lux b/stdlib/source/test/lux/control/state.lux index 8bae5e472..808d5ebb2 100644 --- a/stdlib/source/test/lux/control/state.lux +++ b/stdlib/source/test/lux/control/state.lux @@ -2,14 +2,15 @@ [lux #* ["_" test (#+ Test)] ["." io] - [control - [pipe (#+ let>)] + [abstract [monad (#+ do)] {[0 #test] [/ ["$." functor (#+ Injection Comparison)] ["$." apply] ["$." monad]]}] + [control + [pipe (#+ let>)]] [data ["." product] [text diff --git a/stdlib/source/test/lux/control/thread.lux b/stdlib/source/test/lux/control/thread.lux index a6f28e428..56d3a7d5c 100644 --- a/stdlib/source/test/lux/control/thread.lux +++ b/stdlib/source/test/lux/control/thread.lux @@ -1,7 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/control/writer.lux b/stdlib/source/test/lux/control/writer.lux index dfd3b4a10..392fc7a4b 100644 --- a/stdlib/source/test/lux/control/writer.lux +++ b/stdlib/source/test/lux/control/writer.lux @@ -2,7 +2,7 @@ [lux #* ["_" test (#+ Test)] ["." io] - [control + [abstract [equivalence (#+ Equivalence)] [monoid (#+ Monoid)] [monad (#+ do)] diff --git a/stdlib/source/test/lux/data/bit.lux b/stdlib/source/test/lux/data/bit.lux index f6ad5e727..9515fa5ce 100644 --- a/stdlib/source/test/lux/data/bit.lux +++ b/stdlib/source/test/lux/data/bit.lux @@ -4,7 +4,7 @@ ["_" test (#+ Test)] ["r" math/random] ["." function] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/collection/array.lux b/stdlib/source/test/lux/data/collection/array.lux index 8814a6e88..c210a9163 100644 --- a/stdlib/source/test/lux/data/collection/array.lux +++ b/stdlib/source/test/lux/data/collection/array.lux @@ -2,8 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control - pipe + [abstract [monad (#+ do Monad)] {[0 #test] [/ @@ -11,6 +10,8 @@ ["$." monoid] ["$." fold] ["$." functor (#+ Injection)]]}] + [control + pipe] [data ["." maybe] [number diff --git a/stdlib/source/test/lux/data/collection/bits.lux b/stdlib/source/test/lux/data/collection/bits.lux index ac7e983f9..a727761ca 100644 --- a/stdlib/source/test/lux/data/collection/bits.lux +++ b/stdlib/source/test/lux/data/collection/bits.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] ["." predicate] {[0 #test] diff --git a/stdlib/source/test/lux/data/collection/dictionary.lux b/stdlib/source/test/lux/data/collection/dictionary.lux index e559a2453..863c47973 100644 --- a/stdlib/source/test/lux/data/collection/dictionary.lux +++ b/stdlib/source/test/lux/data/collection/dictionary.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] ["eq" equivalence] {[0 #test] diff --git a/stdlib/source/test/lux/data/collection/dictionary/ordered.lux b/stdlib/source/test/lux/data/collection/dictionary/ordered.lux index 4cd7880ba..57dab9884 100644 --- a/stdlib/source/test/lux/data/collection/dictionary/ordered.lux +++ b/stdlib/source/test/lux/data/collection/dictionary/ordered.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] [equivalence (#+ Equivalence)] [order (#+ Order)] diff --git a/stdlib/source/test/lux/data/collection/list.lux b/stdlib/source/test/lux/data/collection/list.lux index 958025e8b..247b2de78 100644 --- a/stdlib/source/test/lux/data/collection/list.lux +++ b/stdlib/source/test/lux/data/collection/list.lux @@ -3,8 +3,7 @@ data/text/format ["_" test (#+ Test)] ["." io] - [control - pipe + [abstract [monad (#+ do)] {[0 #test] [/ @@ -14,6 +13,8 @@ ["$." functor] ["$." apply] ["$." monad]]}] + [control + pipe] [data ["." bit] ["." product] diff --git a/stdlib/source/test/lux/data/collection/queue.lux b/stdlib/source/test/lux/data/collection/queue.lux index c377fccc3..506cf15e3 100644 --- a/stdlib/source/test/lux/data/collection/queue.lux +++ b/stdlib/source/test/lux/data/collection/queue.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/collection/queue/priority.lux b/stdlib/source/test/lux/data/collection/queue/priority.lux index df24b8368..4c4f2923a 100644 --- a/stdlib/source/test/lux/data/collection/queue/priority.lux +++ b/stdlib/source/test/lux/data/collection/queue/priority.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract ["." monad (#+ do)]] [data ["." maybe] diff --git a/stdlib/source/test/lux/data/collection/row.lux b/stdlib/source/test/lux/data/collection/row.lux index 1fa55e135..15085776b 100644 --- a/stdlib/source/test/lux/data/collection/row.lux +++ b/stdlib/source/test/lux/data/collection/row.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/collection/sequence.lux b/stdlib/source/test/lux/data/collection/sequence.lux index edacef996..6b4529dfc 100644 --- a/stdlib/source/test/lux/data/collection/sequence.lux +++ b/stdlib/source/test/lux/data/collection/sequence.lux @@ -2,9 +2,9 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract comonad - [monad (#+ do Monad)]] + [monad (#+ do)]] [data ["." maybe] [number diff --git a/stdlib/source/test/lux/data/collection/set.lux b/stdlib/source/test/lux/data/collection/set.lux index f319af295..f272cf305 100644 --- a/stdlib/source/test/lux/data/collection/set.lux +++ b/stdlib/source/test/lux/data/collection/set.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/collection/set/ordered.lux b/stdlib/source/test/lux/data/collection/set/ordered.lux index 7f143a9cd..4bddfaf33 100644 --- a/stdlib/source/test/lux/data/collection/set/ordered.lux +++ b/stdlib/source/test/lux/data/collection/set/ordered.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] [order (#+ Order)] {[0 #test] diff --git a/stdlib/source/test/lux/data/collection/stack.lux b/stdlib/source/test/lux/data/collection/stack.lux index 2886fa815..05b8efc47 100644 --- a/stdlib/source/test/lux/data/collection/stack.lux +++ b/stdlib/source/test/lux/data/collection/stack.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/collection/tree/rose.lux b/stdlib/source/test/lux/data/collection/tree/rose.lux index 987a72f45..65b46e382 100644 --- a/stdlib/source/test/lux/data/collection/tree/rose.lux +++ b/stdlib/source/test/lux/data/collection/tree/rose.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/collection/tree/rose/zipper.lux b/stdlib/source/test/lux/data/collection/tree/rose/zipper.lux index 3a3bd296c..e8f59a43a 100644 --- a/stdlib/source/test/lux/data/collection/tree/rose/zipper.lux +++ b/stdlib/source/test/lux/data/collection/tree/rose/zipper.lux @@ -2,8 +2,8 @@ [lux #* data/text/format ["_" test (#+ Test)] + [abstract/monad (#+ do Monad)] [control - [monad (#+ do Monad)] pipe] [data ["." maybe] diff --git a/stdlib/source/test/lux/data/color.lux b/stdlib/source/test/lux/data/color.lux index f3db0c6f7..a8a61cb46 100644 --- a/stdlib/source/test/lux/data/color.lux +++ b/stdlib/source/test/lux/data/color.lux @@ -1,7 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/error.lux b/stdlib/source/test/lux/data/error.lux index c60c6563a..8f89ccb8f 100644 --- a/stdlib/source/test/lux/data/error.lux +++ b/stdlib/source/test/lux/data/error.lux @@ -2,8 +2,7 @@ [lux #* ["_" test (#+ Test)] ["." io] - [control - pipe + [abstract [monad (#+ do Monad)] {[0 #test] [/ @@ -11,6 +10,8 @@ ["$." apply] ["$." monad] ["$." equivalence]]}] + [control + pipe] [data text/format [number diff --git a/stdlib/source/test/lux/data/format/json.lux b/stdlib/source/test/lux/data/format/json.lux index f276c5180..c2826143a 100644 --- a/stdlib/source/test/lux/data/format/json.lux +++ b/stdlib/source/test/lux/data/format/json.lux @@ -2,16 +2,17 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control - pipe + [abstract codec [monad (#+ do Monad)] [equivalence (#+ Equivalence)] - ["p" parser] {[0 #test] [/ ["$." equivalence] ["$." codec]]}] + [control + pipe + ["p" parser]] [data ["." error] ["." bit] diff --git a/stdlib/source/test/lux/data/format/xml.lux b/stdlib/source/test/lux/data/format/xml.lux index 221edba97..cf2b10f65 100644 --- a/stdlib/source/test/lux/data/format/xml.lux +++ b/stdlib/source/test/lux/data/format/xml.lux @@ -2,14 +2,15 @@ [lux (#- char) data/text/format ["_" test (#+ Test)] - [control - pipe + [abstract [monad (#+ Monad do)] - ["p" parser] {[0 #test] [/ ["$." equivalence] ["$." codec]]}] + [control + pipe + ["p" parser]] [data ["." name] ["E" error] diff --git a/stdlib/source/test/lux/data/identity.lux b/stdlib/source/test/lux/data/identity.lux index ef4450c50..38d20a7d5 100644 --- a/stdlib/source/test/lux/data/identity.lux +++ b/stdlib/source/test/lux/data/identity.lux @@ -1,7 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control + [abstract comonad [monad (#+ do)] {[0 #test] diff --git a/stdlib/source/test/lux/data/lazy.lux b/stdlib/source/test/lux/data/lazy.lux index 44c0ff2da..62b1273e4 100644 --- a/stdlib/source/test/lux/data/lazy.lux +++ b/stdlib/source/test/lux/data/lazy.lux @@ -1,7 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/maybe.lux b/stdlib/source/test/lux/data/maybe.lux index 4aa89f85f..dc6ca1d56 100644 --- a/stdlib/source/test/lux/data/maybe.lux +++ b/stdlib/source/test/lux/data/maybe.lux @@ -1,8 +1,7 @@ (.module: [lux #* ["_" test (#+ Test)] - [control - pipe + [abstract [monad (#+ do)] {[0 #test] [/ @@ -10,6 +9,8 @@ ["$." functor] ["$." apply] ["$." monad]]}] + [control + pipe] [data ["." text format] diff --git a/stdlib/source/test/lux/data/name.lux b/stdlib/source/test/lux/data/name.lux index a42684938..d9ee517d0 100644 --- a/stdlib/source/test/lux/data/name.lux +++ b/stdlib/source/test/lux/data/name.lux @@ -1,13 +1,14 @@ (.module: [lux #* ["_" test (#+ Test)] - [control - pipe + [abstract [monad (#+ do)] {[0 #test] [/ ["$." equivalence] ["$." codec]]}] + [control + pipe] [data ["." text ("#@." equivalence) format]] diff --git a/stdlib/source/test/lux/data/number/complex.lux b/stdlib/source/test/lux/data/number/complex.lux index a1fc7beca..8eed3e865 100644 --- a/stdlib/source/test/lux/data/number/complex.lux +++ b/stdlib/source/test/lux/data/number/complex.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/number/frac.lux b/stdlib/source/test/lux/data/number/frac.lux index 89ff72749..544ab858c 100644 --- a/stdlib/source/test/lux/data/number/frac.lux +++ b/stdlib/source/test/lux/data/number/frac.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/number/i64.lux b/stdlib/source/test/lux/data/number/i64.lux index 3e251d1e6..1519b1e48 100644 --- a/stdlib/source/test/lux/data/number/i64.lux +++ b/stdlib/source/test/lux/data/number/i64.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/number/int.lux b/stdlib/source/test/lux/data/number/int.lux index e11685580..5b0d523ae 100644 --- a/stdlib/source/test/lux/data/number/int.lux +++ b/stdlib/source/test/lux/data/number/int.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/number/nat.lux b/stdlib/source/test/lux/data/number/nat.lux index 9616e9bd6..4c46b4b0c 100644 --- a/stdlib/source/test/lux/data/number/nat.lux +++ b/stdlib/source/test/lux/data/number/nat.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/number/ratio.lux b/stdlib/source/test/lux/data/number/ratio.lux index c3c67c317..f0ce55751 100644 --- a/stdlib/source/test/lux/data/number/ratio.lux +++ b/stdlib/source/test/lux/data/number/ratio.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/number/rev.lux b/stdlib/source/test/lux/data/number/rev.lux index 15b98ffe6..308861368 100644 --- a/stdlib/source/test/lux/data/number/rev.lux +++ b/stdlib/source/test/lux/data/number/rev.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/data/text.lux b/stdlib/source/test/lux/data/text.lux index e3166dcd9..20ad838b7 100644 --- a/stdlib/source/test/lux/data/text.lux +++ b/stdlib/source/test/lux/data/text.lux @@ -2,13 +2,14 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control - pipe + [abstract [monad (#+ do Monad)] {[0 #test] [/ ["$." equivalence] ["$." order]]}] + [control + pipe] [data [collection ["." list]]] diff --git a/stdlib/source/test/lux/data/text/lexer.lux b/stdlib/source/test/lux/data/text/lexer.lux index b15a86846..3693b0fd0 100644 --- a/stdlib/source/test/lux/data/text/lexer.lux +++ b/stdlib/source/test/lux/data/text/lexer.lux @@ -2,9 +2,9 @@ [lux #* data/text/format ["_" test (#+ Test)] + [abstract/monad (#+ do)] [control pipe - [monad (#+ do Monad)] ["p" parser]] [data ["." error (#+ Error)] diff --git a/stdlib/source/test/lux/data/text/regex.lux b/stdlib/source/test/lux/data/text/regex.lux index 059adff84..58ef21b8b 100644 --- a/stdlib/source/test/lux/data/text/regex.lux +++ b/stdlib/source/test/lux/data/text/regex.lux @@ -2,8 +2,8 @@ [lux #* data/text/format ["_" test (#+ Test)] + [abstract/monad (#+ do)] [control - [monad (#+ do Monad)] pipe ["p" parser]] [data diff --git a/stdlib/source/test/lux/host.jvm.lux b/stdlib/source/test/lux/host.jvm.lux index 9bd0f5399..04c149881 100644 --- a/stdlib/source/test/lux/host.jvm.lux +++ b/stdlib/source/test/lux/host.jvm.lux @@ -1,7 +1,7 @@ (.module: [lux #* + [abstract/monad (#+ Monad do)] [control - [monad (#+ Monad do)] pipe] [data ["." text ("#;." equivalence)]] diff --git a/stdlib/source/test/lux/host/jvm.jvm.lux b/stdlib/source/test/lux/host/jvm.jvm.lux index b0655ebd3..16c4aea90 100644 --- a/stdlib/source/test/lux/host/jvm.jvm.lux +++ b/stdlib/source/test/lux/host/jvm.jvm.lux @@ -1,7 +1,7 @@ (.module: [lux #* + [abstract/monad (#+ do)] [control - [monad (#+ do)] [concurrency ["." atom]] [security diff --git a/stdlib/source/test/lux/io.lux b/stdlib/source/test/lux/io.lux index 504c9bb9c..3b00ceb3f 100644 --- a/stdlib/source/test/lux/io.lux +++ b/stdlib/source/test/lux/io.lux @@ -3,7 +3,7 @@ data/text/format ["_" test (#+ Test)] ["r" math/random] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/macro.lux b/stdlib/source/test/lux/macro.lux index d7389dd20..acd4bcdac 100644 --- a/stdlib/source/test/lux/macro.lux +++ b/stdlib/source/test/lux/macro.lux @@ -1,7 +1,7 @@ (.module: [lux #* data/text/format - [control/monad (#+ do)] + [abstract/monad (#+ do)] ["r" math/random (#+ Random)] ["_" test (#+ Test)]] {1 diff --git a/stdlib/source/test/lux/macro/code.lux b/stdlib/source/test/lux/macro/code.lux index c400bf206..c8d0b8077 100644 --- a/stdlib/source/test/lux/macro/code.lux +++ b/stdlib/source/test/lux/macro/code.lux @@ -1,7 +1,7 @@ (.module: [lux #* data/text/format - [control/monad (#+ do)] + [abstract/monad (#+ do)] ["r" math/random (#+ Random)] ["_" test (#+ Test)] [data diff --git a/stdlib/source/test/lux/macro/poly/equivalence.lux b/stdlib/source/test/lux/macro/poly/equivalence.lux index 41ae1ecd0..4024d0a89 100644 --- a/stdlib/source/test/lux/macro/poly/equivalence.lux +++ b/stdlib/source/test/lux/macro/poly/equivalence.lux @@ -3,8 +3,8 @@ data/text/format ["r" math/random (#+ Random)] ["_" test (#+ Test)] - [control ["." monad (#+ do)]] - [control + [abstract/monad (#+ do)] + [abstract [equivalence (#+ Equivalence)]] [data ["." bit] diff --git a/stdlib/source/test/lux/macro/poly/functor.lux b/stdlib/source/test/lux/macro/poly/functor.lux index 5b477682d..7f47148ab 100644 --- a/stdlib/source/test/lux/macro/poly/functor.lux +++ b/stdlib/source/test/lux/macro/poly/functor.lux @@ -1,7 +1,7 @@ (.module: [lux #* data/text/format - [control/monad (#+ do)] + [abstract/monad (#+ do)] ["r" math/random (#+ Random)] ["_" test (#+ Test)] [control diff --git a/stdlib/source/test/lux/macro/poly/json.lux b/stdlib/source/test/lux/macro/poly/json.lux index 2669b9801..1209aa90a 100644 --- a/stdlib/source/test/lux/macro/poly/json.lux +++ b/stdlib/source/test/lux/macro/poly/json.lux @@ -2,16 +2,17 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control - pipe + [abstract codec [monad (#+ do Monad)] [equivalence (#+ Equivalence)] - ["p" parser] {[0 #test] [/ ["$." equivalence] ["$." codec]]}] + [control + pipe + ["p" parser]] [data ["." error] ["." bit] diff --git a/stdlib/source/test/lux/macro/syntax.lux b/stdlib/source/test/lux/macro/syntax.lux index 60dd38b6e..92ba86d4d 100644 --- a/stdlib/source/test/lux/macro/syntax.lux +++ b/stdlib/source/test/lux/macro/syntax.lux @@ -1,11 +1,12 @@ (.module: [lux #* data/text/format - [control/monad (#+ do)] + [abstract/monad (#+ do)] ["r" math/random (#+ Random)] ["_" test (#+ Test)] + [abstract + [equivalence (#+ Equivalence)]] [control - [equivalence (#+ Equivalence)] ["p" parser]] [data ["." bit] diff --git a/stdlib/source/test/lux/math.lux b/stdlib/source/test/lux/math.lux index a659e8095..fcd4a1134 100644 --- a/stdlib/source/test/lux/math.lux +++ b/stdlib/source/test/lux/math.lux @@ -3,8 +3,7 @@ data/text/format ["_" test (#+ Test)] ["r" math/random (#+ Random)] - [control - [monad (#+ Monad do)]] + [abstract/monad (#+ Monad do)] [data ["." bit ("#@." equivalence)] [number diff --git a/stdlib/source/test/lux/math/infix.lux b/stdlib/source/test/lux/math/infix.lux index 59a44022a..db40f693c 100644 --- a/stdlib/source/test/lux/math/infix.lux +++ b/stdlib/source/test/lux/math/infix.lux @@ -1,7 +1,7 @@ (.module: [lux #* data/text/format - [control/monad (#+ do)] + [abstract/monad (#+ do)] ["r" math/random] ["_" test (#+ Test)] [data diff --git a/stdlib/source/test/lux/math/logic/continuous.lux b/stdlib/source/test/lux/math/logic/continuous.lux index 214a3c041..82ad36be0 100644 --- a/stdlib/source/test/lux/math/logic/continuous.lux +++ b/stdlib/source/test/lux/math/logic/continuous.lux @@ -1,7 +1,7 @@ (.module: [lux #* data/text/format - [control/monad (#+ do)] + [abstract/monad (#+ do)] ["r" math/random] ["_" test (#+ Test)]] {1 diff --git a/stdlib/source/test/lux/math/logic/fuzzy.lux b/stdlib/source/test/lux/math/logic/fuzzy.lux index e75268bf0..10b75195a 100644 --- a/stdlib/source/test/lux/math/logic/fuzzy.lux +++ b/stdlib/source/test/lux/math/logic/fuzzy.lux @@ -1,7 +1,7 @@ (.module: [lux #* data/text/format - [control/monad (#+ do)] + [abstract/monad (#+ do)] ["r" math/random (#+ Random)] ["_" test (#+ Test)] [data diff --git a/stdlib/source/test/lux/math/modular.lux b/stdlib/source/test/lux/math/modular.lux index 97655ee9b..5d929527e 100644 --- a/stdlib/source/test/lux/math/modular.lux +++ b/stdlib/source/test/lux/math/modular.lux @@ -3,7 +3,7 @@ data/text/format ["_" test (#+ Test)] ["r" math/random] - [control/monad (#+ do)] + [abstract/monad (#+ do)] [data ["." product] ["." bit ("#@." equivalence)] diff --git a/stdlib/source/test/lux/time/date.lux b/stdlib/source/test/lux/time/date.lux index ffd055e35..483b51388 100644 --- a/stdlib/source/test/lux/time/date.lux +++ b/stdlib/source/test/lux/time/date.lux @@ -3,7 +3,8 @@ data/text/format ["r" math/random (#+ Random)] ["_" test (#+ Test)] - [control ["." monad (#+ do)] + [abstract + ["." monad (#+ do)] {[0 #test] [/ ["$." equivalence] diff --git a/stdlib/source/test/lux/time/day.lux b/stdlib/source/test/lux/time/day.lux index 84d404a21..4df0ad30b 100644 --- a/stdlib/source/test/lux/time/day.lux +++ b/stdlib/source/test/lux/time/day.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract {[0 #test] [/ ["$." equivalence] diff --git a/stdlib/source/test/lux/time/duration.lux b/stdlib/source/test/lux/time/duration.lux index a7265f62f..e63397b32 100644 --- a/stdlib/source/test/lux/time/duration.lux +++ b/stdlib/source/test/lux/time/duration.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract [monad (#+ do)] {[0 #test] [/ diff --git a/stdlib/source/test/lux/time/instant.lux b/stdlib/source/test/lux/time/instant.lux index 9b903d993..24f7e7962 100644 --- a/stdlib/source/test/lux/time/instant.lux +++ b/stdlib/source/test/lux/time/instant.lux @@ -2,8 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control - pipe + [abstract [monad (#+ do Monad)] {[0 #test] [/ @@ -11,6 +10,8 @@ ["$." order] ["$." enum] ["$." codec]]}] + [control + pipe] [data ["." text]] [math diff --git a/stdlib/source/test/lux/time/month.lux b/stdlib/source/test/lux/time/month.lux index f0722af0b..7b0cb43d2 100644 --- a/stdlib/source/test/lux/time/month.lux +++ b/stdlib/source/test/lux/time/month.lux @@ -2,7 +2,7 @@ [lux #* data/text/format ["_" test (#+ Test)] - [control + [abstract {[0 #test] [/ ["$." equivalence] diff --git a/stdlib/source/test/lux/type.lux b/stdlib/source/test/lux/type.lux index 96478b077..6840807f7 100644 --- a/stdlib/source/test/lux/type.lux +++ b/stdlib/source/test/lux/type.lux @@ -1,7 +1,7 @@ (.module: [lux (#- type) data/text/format - ["M" control/monad (#+ do)] + ["M" abstract/monad (#+ do)] ["r" math/random (#+ Random)] ["_" test (#+ Test)] [control diff --git a/stdlib/source/test/lux/type/check.lux b/stdlib/source/test/lux/type/check.lux index d73b2783d..9d511d5ae 100644 --- a/stdlib/source/test/lux/type/check.lux +++ b/stdlib/source/test/lux/type/check.lux @@ -1,9 +1,10 @@ (.module: [lux (#- type) data/text/format - [control ["." monad (#+ do)]] ["r" math/random (#+ Random)] ["_" test (#+ Test)] + [abstract + ["." monad (#+ do)]] [control [pipe (#+ case>)]] [data diff --git a/stdlib/source/test/lux/type/dynamic.lux b/stdlib/source/test/lux/type/dynamic.lux index e2564627a..4e1bea6a8 100644 --- a/stdlib/source/test/lux/type/dynamic.lux +++ b/stdlib/source/test/lux/type/dynamic.lux @@ -1,9 +1,9 @@ (.module: [lux #* data/text/format + [abstract/monad (#+ do)] ["r" math/random (#+ Random)] ["_" test (#+ Test)] - [control ["." monad (#+ do)]] [data ["." error]]] {1 diff --git a/stdlib/source/test/lux/type/implicit.lux b/stdlib/source/test/lux/type/implicit.lux index 5383c252f..372f544f7 100644 --- a/stdlib/source/test/lux/type/implicit.lux +++ b/stdlib/source/test/lux/type/implicit.lux @@ -3,8 +3,8 @@ data/text/format ["r" math/random (#+ Random)] ["_" test (#+ Test)] - [control ["." monad (#+ do)]] - [control + [abstract/monad (#+ do)] + [abstract [equivalence (#+)] [functor (#+)]] [data diff --git a/stdlib/source/test/lux/type/resource.lux b/stdlib/source/test/lux/type/resource.lux index 15d7cd137..293629e18 100644 --- a/stdlib/source/test/lux/type/resource.lux +++ b/stdlib/source/test/lux/type/resource.lux @@ -3,7 +3,7 @@ data/text/format ["r" math/random (#+ Random)] ["_" test (#+ Test)] - [control + [abstract [monad [indexed (#+ do)]]] ["." io]] diff --git a/stdlib/source/test/lux/world/binary.lux b/stdlib/source/test/lux/world/binary.lux index 2e463ea4b..a9817115d 100644 --- a/stdlib/source/test/lux/world/binary.lux +++ b/stdlib/source/test/lux/world/binary.lux @@ -3,7 +3,8 @@ data/text/format ["r" math/random (#+ Random)] ["_" test (#+ Test)] - [control ["." monad (#+ do)] + [abstract + ["." monad (#+ do)] {[0 #test] [/ ["$." equivalence]]}] diff --git a/stdlib/source/test/lux/world/file.lux b/stdlib/source/test/lux/world/file.lux index e27add632..86b031660 100644 --- a/stdlib/source/test/lux/world/file.lux +++ b/stdlib/source/test/lux/world/file.lux @@ -3,8 +3,8 @@ data/text/format ["r" math/random (#+ Random) ("#@." monad)] ["_" test (#+ Test)] + [abstract/monad (#+ do)] [control - ["." monad (#+ do)] [concurrency ["." promise]] [security diff --git a/stdlib/source/test/lux/world/net/tcp.lux b/stdlib/source/test/lux/world/net/tcp.lux index f7ec2eaef..b3f9a6d0d 100644 --- a/stdlib/source/test/lux/world/net/tcp.lux +++ b/stdlib/source/test/lux/world/net/tcp.lux @@ -3,7 +3,7 @@ data/text/format ["r" math/random (#+ Random)] ["_" test (#+ Test)] - [control ["." monad (#+ do)]] + ["." abstract/monad (#+ do)] ["." io (#+ IO)] [control ["ex" exception (#+ exception:)] diff --git a/stdlib/source/test/lux/world/net/udp.lux b/stdlib/source/test/lux/world/net/udp.lux index 1740c861c..2e61257ad 100644 --- a/stdlib/source/test/lux/world/net/udp.lux +++ b/stdlib/source/test/lux/world/net/udp.lux @@ -3,8 +3,8 @@ data/text/format ["r" math/random (#+ Random)] ["_" test (#+ Test)] + ["." abstract/monad (#+ do)] [control - ["." monad (#+ do)] [concurrency ["." promise]] [security |