From c5b61d2f46ac19bf511197f3a537c4be0f47df33 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Fri, 27 Aug 2021 20:59:34 -0400 Subject: Updates to the Ruby compiler. --- stdlib/source/test/aedifex/hash.lux | 2 +- stdlib/source/test/aedifex/parser.lux | 4 +- stdlib/source/test/aedifex/profile.lux | 6 +- stdlib/source/test/lux.lux | 46 +++++----- stdlib/source/test/lux/abstract/comonad/cofree.lux | 2 +- stdlib/source/test/lux/abstract/monad/free.lux | 2 +- .../source/test/lux/control/concurrency/actor.lux | 2 +- stdlib/source/test/lux/control/concurrency/frp.lux | 2 +- stdlib/source/test/lux/control/continuation.lux | 2 +- stdlib/source/test/lux/control/function/memo.lux | 2 +- stdlib/source/test/lux/control/lazy.lux | 2 +- stdlib/source/test/lux/control/parser.lux | 12 +-- stdlib/source/test/lux/control/parser/code.lux | 18 ++++ stdlib/source/test/lux/control/parser/text.lux | 4 +- stdlib/source/test/lux/control/reader.lux | 4 +- stdlib/source/test/lux/control/region.lux | 14 ++-- stdlib/source/test/lux/control/remember.lux | 2 +- stdlib/source/test/lux/control/security/policy.lux | 10 +-- stdlib/source/test/lux/control/state.lux | 4 +- stdlib/source/test/lux/control/thread.lux | 10 +-- stdlib/source/test/lux/control/try.lux | 2 +- stdlib/source/test/lux/control/writer.lux | 4 +- stdlib/source/test/lux/data/binary.lux | 2 +- .../lux/data/collection/dictionary/ordered.lux | 2 +- .../test/lux/data/collection/dictionary/plist.lux | 2 +- stdlib/source/test/lux/data/collection/row.lux | 2 +- .../source/test/lux/data/collection/sequence.lux | 4 +- .../source/test/lux/data/collection/set/multi.lux | 2 +- .../test/lux/data/collection/set/ordered.lux | 2 +- stdlib/source/test/lux/data/collection/tree.lux | 2 +- stdlib/source/test/lux/data/text/format.lux | 6 +- stdlib/source/test/lux/data/text/regex.lux | 2 +- stdlib/source/test/lux/ffi.js.lux | 4 +- stdlib/source/test/lux/ffi.lua.lux | 4 +- stdlib/source/test/lux/ffi.py.lux | 4 +- stdlib/source/test/lux/ffi.rb.lux | 2 +- stdlib/source/test/lux/locale/language.lux | 8 +- stdlib/source/test/lux/locale/territory.lux | 8 +- stdlib/source/test/lux/macro/code.lux | 4 +- stdlib/source/test/lux/math/modular.lux | 2 +- stdlib/source/test/lux/math/modulus.lux | 2 +- stdlib/source/test/lux/math/number/i64.lux | 2 +- stdlib/source/test/lux/meta/annotation.lux | 4 +- stdlib/source/test/lux/static.lux | 98 +++++++++++----------- stdlib/source/test/lux/target/jvm.lux | 10 +-- .../language/lux/phase/analysis/function.lux | 4 +- .../language/lux/phase/analysis/structure.lux | 4 +- .../compiler/language/lux/phase/synthesis/case.lux | 2 +- stdlib/source/test/lux/type/check.lux | 54 ++++++------ stdlib/source/test/lux/type/poly/json.lux | 2 +- stdlib/source/test/lux/type/quotient.lux | 2 +- stdlib/source/test/lux/type/variance.lux | 2 +- 52 files changed, 212 insertions(+), 192 deletions(-) (limited to 'stdlib/source/test') diff --git a/stdlib/source/test/aedifex/hash.lux b/stdlib/source/test/aedifex/hash.lux index e91b79e1f..46eab9c88 100644 --- a/stdlib/source/test/aedifex/hash.lux +++ b/stdlib/source/test/aedifex/hash.lux @@ -26,7 +26,7 @@ ["_." binary]]]]) (def: .public (random hash) - (All [h] + (All (_ h) (-> (-> Binary (/.Hash h)) (Random (/.Hash h)))) (do {! random.monad} diff --git a/stdlib/source/test/aedifex/parser.lux b/stdlib/source/test/aedifex/parser.lux index de27a0ee8..be05cdda9 100644 --- a/stdlib/source/test/aedifex/parser.lux +++ b/stdlib/source/test/aedifex/parser.lux @@ -38,13 +38,13 @@ (random.ascii/alpha 1)) (def: (list_of random) - (All [a] (-> (Random a) (Random (List a)))) + (All (_ a) (-> (Random a) (Random (List a)))) (do {! random.monad} [size (\ ! each (n.% 5) random.nat)] (random.list size random))) (def: (dictionary_of key_hash key_random value_random) - (All [k v] (-> (Hash k) (Random k) (Random v) (Random (Dictionary k v)))) + (All (_ k v) (-> (Hash k) (Random k) (Random v) (Random (Dictionary k v)))) (\ random.functor each (dictionary.of_list key_hash) (..list_of (random.and key_random value_random)))) diff --git a/stdlib/source/test/aedifex/profile.lux b/stdlib/source/test/aedifex/profile.lux index 92d755290..39aaa4fa3 100644 --- a/stdlib/source/test/aedifex/profile.lux +++ b/stdlib/source/test/aedifex/profile.lux @@ -72,19 +72,19 @@ ..developer) (def: (list_of random) - (All [a] (-> (Random a) (Random (List a)))) + (All (_ a) (-> (Random a) (Random (List a)))) (do {! random.monad} [size (\ ! each (n.% 5) random.nat)] (random.list size random))) (def: (set_of hash random) - (All [a] (-> (Hash a) (Random a) (Random (Set a)))) + (All (_ a) (-> (Hash a) (Random a) (Random (Set a)))) (\ random.functor each (set.of_list hash) (..list_of random))) (def: (dictionary_of key_hash key_random value_random) - (All [k v] (-> (Hash k) (Random k) (Random v) (Random (Dictionary k v)))) + (All (_ k v) (-> (Hash k) (Random k) (Random v) (Random (Dictionary k v)))) (\ random.functor each (dictionary.of_list key_hash) (..list_of (random.and key_random value_random)))) diff --git a/stdlib/source/test/lux.lux b/stdlib/source/test/lux.lux index df0eb2f09..b7fb2feb5 100644 --- a/stdlib/source/test/lux.lux +++ b/stdlib/source/test/lux.lux @@ -91,13 +91,11 @@ /locale.test /macro.test /math.test - /meta.test /program.test /static.test /target.test /test.test - /time.test ... /tool.test /type.test @@ -233,7 +231,7 @@ return))) (/.implementation: (global_returner value) - (All [a] (-> a (Returner a))) + (All (_ a) (-> a (Returner a))) (def: (return _) value)) @@ -861,24 +859,26 @@ (function (_ _) (: /.Int (undefined)))) true))) - (_.cover [/.All] - (let [identity (: (/.All [a] (-> a a)) - (|>>))] - (and (exec - (: Nat - (identity left)) - true) - (exec - (: Text - (identity right)) - true)))) - (_.cover [/.Ex] - (let [hide (: (/.Ex [a] (-> Nat a)) - (|>>))] - (exec - (: /.Any - (hide left)) - true))) + (_.for [/.__adjusted_quantified_type__] + ($_ _.and + (_.cover [/.All] + (let [identity (: (/.All (_ a) (-> a a)) + (|>>))] + (and (exec + (: Nat + (identity left)) + true) + (exec + (: Text + (identity right)) + true)))) + (_.cover [/.Ex] + (let [hide (: (/.Ex (_ a) (-> Nat a)) + (|>>))] + (exec + (: /.Any + (hide left)) + true))))) (_.cover [/.same?] (let [not_left (|> left ++ --)] (and (/.same? left left) @@ -1042,12 +1042,12 @@ )) (def: identity/constant - (All [a] (-> a a)) + (All (_ a) (-> a a)) (function (_ value) value)) (def: (identity/function value) - (All [a] (-> a a)) + (All (_ a) (-> a a)) value) (def: for_def: diff --git a/stdlib/source/test/lux/abstract/comonad/cofree.lux b/stdlib/source/test/lux/abstract/comonad/cofree.lux index 971088981..226b152bc 100644 --- a/stdlib/source/test/lux/abstract/comonad/cofree.lux +++ b/stdlib/source/test/lux/abstract/comonad/cofree.lux @@ -24,7 +24,7 @@ [value (sequence\each injection (sequence.repeated value))]) (def: (interpret [head tail]) - (All [a] (-> (/.CoFree Sequence a) (Sequence a))) + (All (_ a) (-> (/.CoFree Sequence a) (Sequence a))) (|> tail (sequence\each (\ (/.comonad sequence.functor) out)) [head] diff --git a/stdlib/source/test/lux/abstract/monad/free.lux b/stdlib/source/test/lux/abstract/monad/free.lux index 8df494aac..15c0bd8da 100644 --- a/stdlib/source/test/lux/abstract/monad/free.lux +++ b/stdlib/source/test/lux/abstract/monad/free.lux @@ -23,7 +23,7 @@ (|>> #/.Pure)) (def: (interpret free) - (All [a] (-> (/.Free List a) (List a))) + (All (_ a) (-> (/.Free List a) (List a))) (case free (#/.Pure value) (list value) diff --git a/stdlib/source/test/lux/control/concurrency/actor.lux b/stdlib/source/test/lux/control/concurrency/actor.lux index c5c66d2fc..a5c090476 100644 --- a/stdlib/source/test/lux/control/concurrency/actor.lux +++ b/stdlib/source/test/lux/control/concurrency/actor.lux @@ -51,7 +51,7 @@ Test (do {! random.monad} [initial_state random.nat - .let [as_mail (: (All [a] (-> (-> a a) (/.Mail a))) + .let [as_mail (: (All (_ a) (-> (-> a a) (/.Mail a))) (function (_ transform) (function (_ state actor) (|> state transform #try.Success async\in)))) diff --git a/stdlib/source/test/lux/control/concurrency/frp.lux b/stdlib/source/test/lux/control/concurrency/frp.lux index ad508df7b..dd018d88e 100644 --- a/stdlib/source/test/lux/control/concurrency/frp.lux +++ b/stdlib/source/test/lux/control/concurrency/frp.lux @@ -47,7 +47,7 @@ false)))))) (def: (take_amount amount_of_polls [channel sink]) - (All [a] (-> Nat [(/.Channel a) (/.Sink a)] (Async (List a)))) + (All (_ a) (-> Nat [(/.Channel a) (/.Sink a)] (Async (List a)))) (case amount_of_polls 0 (do async.monad [_ (async.future (\ sink close))] diff --git a/stdlib/source/test/lux/control/continuation.lux b/stdlib/source/test/lux/control/continuation.lux index cac3794a0..e15992e9d 100644 --- a/stdlib/source/test/lux/control/continuation.lux +++ b/stdlib/source/test/lux/control/continuation.lux @@ -19,7 +19,7 @@ ["." /]]) (def: injection - (All [o] (Injection (All [i] (/.Cont i o)))) + (All (_ o) (Injection (All (_ i) (/.Cont i o)))) (|>> /.pending)) (def: comparison diff --git a/stdlib/source/test/lux/control/function/memo.lux b/stdlib/source/test/lux/control/function/memo.lux index 266952896..1de41d45d 100644 --- a/stdlib/source/test/lux/control/function/memo.lux +++ b/stdlib/source/test/lux/control/function/memo.lux @@ -36,7 +36,7 @@ (in (n.+ output_1 output_2))))) (def: (time function input) - (All [i o] (-> (-> i o) i (IO [Duration o]))) + (All (_ i o) (-> (-> i o) i (IO [Duration o]))) (do io.monad [before instant.now .let [output (function input)] diff --git a/stdlib/source/test/lux/control/lazy.lux b/stdlib/source/test/lux/control/lazy.lux index bc1ed13d0..31990bc79 100644 --- a/stdlib/source/test/lux/control/lazy.lux +++ b/stdlib/source/test/lux/control/lazy.lux @@ -28,7 +28,7 @@ (\ (/.equivalence ==) =))) (def: .public lazy - (All [a] (-> (Random a) (Random (Lazy a)))) + (All (_ a) (-> (Random a) (Random (Lazy a)))) (\ random.functor each (|>> /.lazy))) (def: .public test diff --git a/stdlib/source/test/lux/control/parser.lux b/stdlib/source/test/lux/control/parser.lux index fd29bd07b..e20558de9 100644 --- a/stdlib/source/test/lux/control/parser.lux +++ b/stdlib/source/test/lux/control/parser.lux @@ -41,7 +41,7 @@ ["#." xml]]) (def: (should_fail expected input) - (All [a] (-> Text (Try a) Bit)) + (All (_ a) (-> Text (Try a) Bit)) (case input (#try.Failure actual) (text\= expected actual) @@ -50,7 +50,7 @@ #0)) (def: (enforced? parser input) - (All [s] (-> (Parser s Any) s Bit)) + (All (_ s) (-> (Parser s Any) s Bit)) (case (/.result parser input) (#try.Success [_ []]) #1 @@ -59,7 +59,7 @@ #0)) (def: (found? parser input) - (All [s] (-> (Parser s Bit) s Bit)) + (All (_ s) (-> (Parser s Bit) s Bit)) (case (/.result parser input) (#try.Success [_ #1]) #1 @@ -68,7 +68,7 @@ #0)) (def: (fails? input) - (All [a] (-> (Try a) Bit)) + (All (_ a) (-> (Try a) Bit)) (case input (#try.Failure _) #1 @@ -332,11 +332,11 @@ ))) (def: injection - (Injection (All [a i] (Parser i a))) + (Injection (All (_ a i) (Parser i a))) (\ /.monad in)) (def: comparison - (Comparison (All [a i] (Parser i a))) + (Comparison (All (_ a i) (Parser i a))) (function (_ == left right) (case [(/.result left []) (/.result right [])] [(#try.Success [_ left]) (#try.Success [_ right])] diff --git a/stdlib/source/test/lux/control/parser/code.lux b/stdlib/source/test/lux/control/parser/code.lux index 99ea38f16..2ade93b12 100644 --- a/stdlib/source/test/lux/control/parser/code.lux +++ b/stdlib/source/test/lux/control/parser/code.lux @@ -133,4 +133,22 @@ (!expect (#try.Success []))) (|> (/.result /.end! (list dummy)) (!expect (#try.Failure _)))))) + (do {! random.monad} + [expected (\ ! each code.bit random.bit)] + (_.cover [/.next] + (|> (/.result (do <>.monad + [pre /.next + post /.any] + (in (and (same? expected pre) + (same? pre post)))) + (list expected)) + (!expect (#try.Success _))))) + (do {! random.monad} + [expected (\ ! each code.bit random.bit)] + (_.cover [/.not] + (and (|> (/.result (/.not /.nat) (list expected)) + (!expect (^multi (#try.Success actual) + (same? expected actual)))) + (|> (/.result (/.not /.bit) (list expected)) + (!expect (#try.Failure _)))))) )))) diff --git a/stdlib/source/test/lux/control/parser/text.lux b/stdlib/source/test/lux/control/parser/text.lux index 3b28d2390..23d9dc897 100644 --- a/stdlib/source/test/lux/control/parser/text.lux +++ b/stdlib/source/test/lux/control/parser/text.lux @@ -40,7 +40,7 @@ false)]) (def: (should_fail' sample parser exception) - (All [a e] (-> Text (/.Parser a) (Exception e) Bit)) + (All (_ a e) (-> Text (/.Parser a) (Exception e) Bit)) (case (/.result parser sample) (#try.Failure error) (exception.match? exception error) @@ -49,7 +49,7 @@ false)) (def: (should_fail sample parser) - (All [a] (-> Text (/.Parser a) Bit)) + (All (_ a) (-> Text (/.Parser a) Bit)) (case (/.result parser sample) (#try.Failure _) true diff --git a/stdlib/source/test/lux/control/reader.lux b/stdlib/source/test/lux/control/reader.lux index 78ea0d961..14b307b94 100644 --- a/stdlib/source/test/lux/control/reader.lux +++ b/stdlib/source/test/lux/control/reader.lux @@ -18,12 +18,12 @@ ["." io (#+ IO)]]]]) (def: (injection value) - (Injection (All [a r] (Reader r a))) + (Injection (All (_ a r) (Reader r a))) (function (_ env) value)) (def: comparison - (Comparison (All [a r] (Reader r a))) + (Comparison (All (_ a r) (Reader r a))) (function (_ == left right) (== (/.result [] left) (/.result [] right)))) diff --git a/stdlib/source/test/lux/control/region.lux b/stdlib/source/test/lux/control/region.lux index 5cf65f56b..b6036672b 100644 --- a/stdlib/source/test/lux/control/region.lux +++ b/stdlib/source/test/lux/control/region.lux @@ -31,7 +31,7 @@ (exception: oops) (def: (success? result) - (All [a] (-> (Try a) Bit)) + (All (_ a) (-> (Try a) Bit)) (case result (#try.Success _) true @@ -40,7 +40,7 @@ false)) (def: (throws? exception result) - (All [e a] (-> (Exception e) (Try a) Bit)) + (All (_ e a) (-> (Exception e) (Try a) Bit)) (case result (#try.Success _) false @@ -49,14 +49,14 @@ (exception.match? exception error))) (def: (injection value) - (Injection (All [a] (All [! r] (Region r (Thread !) a)))) + (Injection (All (_ a) (All (_ ! r) (Region r (Thread !) a)))) (function (_ [region scope]) (function (_ !) [scope (#try.Success value)]))) (def: comparison - (Comparison (All [a] (All [! r] (Region r (Thread !) a)))) + (Comparison (All (_ a) (All (_ ! r) (Region r (Thread !) a)))) (function (_ == left right) (case [(:sharing [a] (Equivalence a) @@ -84,15 +84,15 @@ [expected_clean_ups (|> random.nat (\ ! each (|>> (n.% 100) (n.max 1))))] ($_ _.and (_.for [/.functor] - ($functor.spec ..injection ..comparison (: (All [! r] + ($functor.spec ..injection ..comparison (: (All (_ ! r) (Functor (Region r (thread.Thread !)))) (/.functor thread.functor)))) (_.for [/.apply] - ($apply.spec ..injection ..comparison (: (All [! r] + ($apply.spec ..injection ..comparison (: (All (_ ! r) (Apply (Region r (thread.Thread !)))) (/.apply thread.monad)))) (_.for [/.monad] - ($monad.spec ..injection ..comparison (: (All [! r] + ($monad.spec ..injection ..comparison (: (All (_ ! r) (Monad (Region r (thread.Thread !)))) (/.monad thread.monad)))) diff --git a/stdlib/source/test/lux/control/remember.lux b/stdlib/source/test/lux/control/remember.lux index ae5240f7e..07db4bf9a 100644 --- a/stdlib/source/test/lux/control/remember.lux +++ b/stdlib/source/test/lux/control/remember.lux @@ -42,7 +42,7 @@ (#.Some focus) (list focus)))))) (def: (attempt computation) - (All [a] (-> (Meta a) (Meta (Try a)))) + (All (_ a) (-> (Meta a) (Meta (Try a)))) (function (_ compiler) (case (computation compiler) (#try.Success [compiler output]) diff --git a/stdlib/source/test/lux/control/security/policy.lux b/stdlib/source/test/lux/control/security/policy.lux index b49d04df9..ba2e62ed5 100644 --- a/stdlib/source/test/lux/control/security/policy.lux +++ b/stdlib/source/test/lux/control/security/policy.lux @@ -19,13 +19,13 @@ ["." / (#+ Context Privacy Can_Conceal Can_Reveal Privilege Private)]]) (def: (injection can_conceal) - (All [label] - (-> (Can_Conceal label) (Injection (All [value] (Private value label))))) + (All (_ label) + (-> (Can_Conceal label) (Injection (All (_ value) (Private value label))))) can_conceal) (def: (comparison can_reveal) - (All [label] - (-> (Can_Reveal label) (Comparison (All [value] (Private value label))))) + (All (_ label) + (-> (Can_Reveal label) (Comparison (All (_ value) (Private value label))))) (function (_ == left right) (== (can_reveal left) (can_reveal right)))) @@ -45,7 +45,7 @@ privilege))) (def: (policy _) - (Ex [%] (-> Any (Policy %))) + (Ex (_ %) (-> Any (Policy %))) (/.with_policy (: (Context Privacy Policy) (function (_ (^@ privilege (^open "%\."))) diff --git a/stdlib/source/test/lux/control/state.lux b/stdlib/source/test/lux/control/state.lux index 10bda7445..74c4ca33f 100644 --- a/stdlib/source/test/lux/control/state.lux +++ b/stdlib/source/test/lux/control/state.lux @@ -55,12 +55,12 @@ ))) (def: (injection value) - (All [s] (Injection (State s))) + (All (_ s) (Injection (State s))) (function (_ state) [state value])) (def: (comparison init) - (All [s] (-> s (Comparison (State s)))) + (All (_ s) (-> s (Comparison (State s)))) (function (_ == left right) (== (product.right (/.result init left)) (product.right (/.result init right))))) diff --git a/stdlib/source/test/lux/control/thread.lux b/stdlib/source/test/lux/control/thread.lux index 2f93f2349..5976ebded 100644 --- a/stdlib/source/test/lux/control/thread.lux +++ b/stdlib/source/test/lux/control/thread.lux @@ -18,11 +18,11 @@ ["." io]]]]) (def: (injection value) - (Injection (All [a !] (Thread ! a))) + (Injection (All (_ a !) (Thread ! a))) (\ /.monad in value)) (def: comparison - (Comparison (All [a !] (Thread ! a))) + (Comparison (All (_ a !) (Thread ! a))) (function (_ == left right) (== (/.result left) (/.result right)))) @@ -59,14 +59,14 @@ ($_ _.and (_.cover [/.read!] (n.= sample - (/.result (: (All [!] (Thread ! Nat)) + (/.result (: (All (_ !) (Thread ! Nat)) (do /.monad [box (/.box sample)] (/.read! box)))))) (_.cover [/.write!] (n.= factor - (/.result (: (All [!] (Thread ! Nat)) + (/.result (: (All (_ !) (Thread ! Nat)) (do /.monad [box (/.box sample) _ (/.write! factor box)] @@ -74,7 +74,7 @@ (_.cover [/.update!] (n.= (n.* factor sample) - (/.result (: (All [!] (Thread ! Nat)) + (/.result (: (All (_ !) (Thread ! Nat)) (do /.monad [box (/.box sample) old (/.update! (n.* factor) box)] diff --git a/stdlib/source/test/lux/control/try.lux b/stdlib/source/test/lux/control/try.lux index 55bcc0b4f..1638e2351 100644 --- a/stdlib/source/test/lux/control/try.lux +++ b/stdlib/source/test/lux/control/try.lux @@ -31,7 +31,7 @@ (\ (/.equivalence ==) =))) (def: .public (attempt element) - (All [a] (-> (Random a) (Random (Try a)))) + (All (_ a) (-> (Random a) (Random (Try a)))) ($_ random.or (random.unicode 1) element)) diff --git a/stdlib/source/test/lux/control/writer.lux b/stdlib/source/test/lux/control/writer.lux index 5ef2c76c4..27a7f32b7 100644 --- a/stdlib/source/test/lux/control/writer.lux +++ b/stdlib/source/test/lux/control/writer.lux @@ -23,11 +23,11 @@ ["." / (#+ Writer)]]) (def: (injection monoid value) - (All [w] (-> (Monoid w) (Injection (Writer w)))) + (All (_ w) (-> (Monoid w) (Injection (Writer w)))) [(\ monoid identity) value]) (def: comparison - (All [w] (Comparison (Writer w))) + (All (_ w) (Comparison (Writer w))) (function (_ == [_ left] [_ right]) (== left right))) diff --git a/stdlib/source/test/lux/data/binary.lux b/stdlib/source/test/lux/data/binary.lux index 6ee71541c..9ab46a991 100644 --- a/stdlib/source/test/lux/data/binary.lux +++ b/stdlib/source/test/lux/data/binary.lux @@ -43,7 +43,7 @@ (\ random.monad in output))))) (def: (throws? exception try) - (All [e a] (-> (Exception e) (Try a) Bit)) + (All (_ e a) (-> (Exception e) (Try a) Bit)) (case try (#try.Failure error) (exception.match? exception error) diff --git a/stdlib/source/test/lux/data/collection/dictionary/ordered.lux b/stdlib/source/test/lux/data/collection/dictionary/ordered.lux index 739756640..f409a55d9 100644 --- a/stdlib/source/test/lux/data/collection/dictionary/ordered.lux +++ b/stdlib/source/test/lux/data/collection/dictionary/ordered.lux @@ -24,7 +24,7 @@ ["." /]]) (def: .public (dictionary order gen_key gen_value size) - (All [k v] + (All (_ k v) (-> (Order k) (Random k) (Random v) Nat (Random (/.Dictionary k v)))) (case size 0 diff --git a/stdlib/source/test/lux/data/collection/dictionary/plist.lux b/stdlib/source/test/lux/data/collection/dictionary/plist.lux index f83e4cf82..a4ca3d573 100644 --- a/stdlib/source/test/lux/data/collection/dictionary/plist.lux +++ b/stdlib/source/test/lux/data/collection/dictionary/plist.lux @@ -22,7 +22,7 @@ ["." /]]) (def: .public (random size gen_key gen_value) - (All [v] + (All (_ v) (-> Nat (Random Text) (Random v) (Random (/.PList v)))) (do random.monad [keys (random.set text.hash size gen_key) diff --git a/stdlib/source/test/lux/data/collection/row.lux b/stdlib/source/test/lux/data/collection/row.lux index b5ba88171..168fd9397 100644 --- a/stdlib/source/test/lux/data/collection/row.lux +++ b/stdlib/source/test/lux/data/collection/row.lux @@ -115,7 +115,7 @@ (and (/.within_bounds? sample good_index) (not (/.within_bounds? sample bad_index)))) (_.cover [/.index_out_of_bounds] - (let [fails! (: (All [a] (-> (Try a) Bit)) + (let [fails! (: (All (_ a) (-> (Try a) Bit)) (function (_ situation) (case situation (#try.Success member) diff --git a/stdlib/source/test/lux/data/collection/sequence.lux b/stdlib/source/test/lux/data/collection/sequence.lux index ace5fa0cb..4c349854b 100644 --- a/stdlib/source/test/lux/data/collection/sequence.lux +++ b/stdlib/source/test/lux/data/collection/sequence.lux @@ -22,7 +22,7 @@ ["." /]]) (implementation: (equivalence super) - (All [a] (-> (Equivalence a) (Equivalence (/.Sequence a)))) + (All (_ a) (-> (Equivalence a) (Equivalence (/.Sequence a)))) (def: (= reference subject) (\ (list.equivalence super) = @@ -30,7 +30,7 @@ (/.first 100 subject)))) (def: (iterations step) - (All [a] + (All (_ a) (-> (-> a a) (-> a (/.Sequence a)))) (/.iterations diff --git a/stdlib/source/test/lux/data/collection/set/multi.lux b/stdlib/source/test/lux/data/collection/set/multi.lux index 55928932f..6b03b9416 100644 --- a/stdlib/source/test/lux/data/collection/set/multi.lux +++ b/stdlib/source/test/lux/data/collection/set/multi.lux @@ -26,7 +26,7 @@ (\ random.monad each (|>> (n.% 10) ++) random.nat)) (def: .public (random size hash count element) - (All [a] (-> Nat (Hash a) (Random Nat) (Random a) (Random (/.Set a)))) + (All (_ a) (-> Nat (Hash a) (Random Nat) (Random a) (Random (/.Set a)))) (do {! random.monad} [elements (random.set hash size element) element_counts (random.list size ..count)] diff --git a/stdlib/source/test/lux/data/collection/set/ordered.lux b/stdlib/source/test/lux/data/collection/set/ordered.lux index 31b8b0405..a9b171d11 100644 --- a/stdlib/source/test/lux/data/collection/set/ordered.lux +++ b/stdlib/source/test/lux/data/collection/set/ordered.lux @@ -24,7 +24,7 @@ (\ random.monad each (n.% 100) random.nat)) (def: .public (random size &order gen_value) - (All [a] (-> Nat (Order a) (Random a) (Random (Set a)))) + (All (_ a) (-> Nat (Order a) (Random a) (Random (Set a)))) (case size 0 (random\in (/.empty &order)) diff --git a/stdlib/source/test/lux/data/collection/tree.lux b/stdlib/source/test/lux/data/collection/tree.lux index d48a8d208..35b43bb9b 100644 --- a/stdlib/source/test/lux/data/collection/tree.lux +++ b/stdlib/source/test/lux/data/collection/tree.lux @@ -20,7 +20,7 @@ ["." / (#+ Tree)]]) (def: .public (tree gen_value) - (All [a] (-> (Random a) (Random [Nat (Tree a)]))) + (All (_ a) (-> (Random a) (Random [Nat (Tree a)]))) (do {! random.monad} [value gen_value num_children (\ ! each (n.% 2) random.nat) diff --git a/stdlib/source/test/lux/data/text/format.lux b/stdlib/source/test/lux/data/text/format.lux index 5f604f1f8..a6a9aae06 100644 --- a/stdlib/source/test/lux/data/text/format.lux +++ b/stdlib/source/test/lux/data/text/format.lux @@ -53,14 +53,14 @@ ["." /]]) (implementation: (equivalence example) - (All [a] (-> a (Equivalence (/.Format a)))) + (All (_ a) (-> a (Equivalence (/.Format a)))) (def: (= reference subject) (text\= (reference example) (subject example)))) (def: random_contravariant - (Random (Ex [a] [(/.Format a) - (Random a)])) + (Random (Ex (_ a) [(/.Format a) + (Random a)])) ($_ random.either (random\in [/.bit random.bit]) (random\in [/.nat random.nat]) diff --git a/stdlib/source/test/lux/data/text/regex.lux b/stdlib/source/test/lux/data/text/regex.lux index 1e77a7904..041f22d9e 100644 --- a/stdlib/source/test/lux/data/text/regex.lux +++ b/stdlib/source/test/lux/data/text/regex.lux @@ -43,7 +43,7 @@ false))) (def: (should_fail regex input) - (All [a] (-> (Parser a) Text Bit)) + (All (_ a) (-> (Parser a) Text Bit)) (|> input (.result regex) (case> (#try.Failure _) diff --git a/stdlib/source/test/lux/ffi.js.lux b/stdlib/source/test/lux/ffi.js.lux index 230fad9a9..7a3a1b3b1 100644 --- a/stdlib/source/test/lux/ffi.js.lux +++ b/stdlib/source/test/lux/ffi.js.lux @@ -71,7 +71,7 @@ (~~ (template [] [(_.cover [] (exec - (: (Ex [a] (/.Object a)) + (: (Ex (_ a) (/.Object a)) (: (:expected []))) true))] @@ -86,7 +86,7 @@ (exec (: Nat (/.null [])) (: Text (/.null [])) - (: (All [a] (-> a a)) (/.null [])) + (: (All (_ a) (-> a a)) (/.null [])) true)) (_.cover [/.null?] (and (/.null? (/.null [])) diff --git a/stdlib/source/test/lux/ffi.lua.lux b/stdlib/source/test/lux/ffi.lua.lux index 9b81d303b..9f78a75b4 100644 --- a/stdlib/source/test/lux/ffi.lua.lux +++ b/stdlib/source/test/lux/ffi.lua.lux @@ -40,7 +40,7 @@ (exec (|> [] (:as ) - (: (Ex [a] (/.Object a)))) + (: (Ex (_ a) (/.Object a)))) true))] [/.Nil] @@ -50,7 +50,7 @@ (exec (|> (/.closure [input/0] input/0) (: /.Function) - (: (Ex [a] (/.Object a)))) + (: (Ex (_ a) (/.Object a)))) true)) (_.cover [/.import:] (case (io.run! (..os/getenv string)) diff --git a/stdlib/source/test/lux/ffi.py.lux b/stdlib/source/test/lux/ffi.py.lux index a2f5c7444..2e5e89d5e 100644 --- a/stdlib/source/test/lux/ffi.py.lux +++ b/stdlib/source/test/lux/ffi.py.lux @@ -43,7 +43,7 @@ (exec (|> [] (:as ) - (: (Ex [a] (/.Object a)))) + (: (Ex (_ a) (/.Object a)))) true))] [/.None] @@ -53,7 +53,7 @@ (exec (|> (/.lambda [input/0] input/0) (: /.Function) - (: (Ex [a] (/.Object a)))) + (: (Ex (_ a) (/.Object a)))) true)) (_.cover [/.import:] (and (i.= (os::R_OK) (os::R_OK)) diff --git a/stdlib/source/test/lux/ffi.rb.lux b/stdlib/source/test/lux/ffi.rb.lux index f39893779..6e10fcce1 100644 --- a/stdlib/source/test/lux/ffi.rb.lux +++ b/stdlib/source/test/lux/ffi.rb.lux @@ -40,7 +40,7 @@ (exec (|> [] (:as ) - (: (Ex [a] (/.Object a)))) + (: (Ex (_ a) (/.Object a)))) true))] [/.Nil] diff --git a/stdlib/source/test/lux/locale/language.lux b/stdlib/source/test/lux/locale/language.lux index 19883a827..e11595968 100644 --- a/stdlib/source/test/lux/locale/language.lux +++ b/stdlib/source/test/lux/locale/language.lux @@ -185,10 +185,10 @@ )) (def: (aggregate lens hash territories) - (All [a] (-> (-> Bundle (Set a)) - (Hash a) - (List Bundle) - [Nat (Set a)])) + (All (_ a) (-> (-> Bundle (Set a)) + (Hash a) + (List Bundle) + [Nat (Set a)])) (list\mix (function (_ bundle [amount set]) [(n.+ amount (value@ #amount bundle)) (set.union set (lens bundle))]) diff --git a/stdlib/source/test/lux/locale/territory.lux b/stdlib/source/test/lux/locale/territory.lux index 2a225a58e..b129c333c 100644 --- a/stdlib/source/test/lux/locale/territory.lux +++ b/stdlib/source/test/lux/locale/territory.lux @@ -140,10 +140,10 @@ ..territories/z)) (def: (aggregate lens hash territories) - (All [a] (-> (-> Bundle (Set a)) - (Hash a) - (List Bundle) - [Nat (Set a)])) + (All (_ a) (-> (-> Bundle (Set a)) + (Hash a) + (List Bundle) + [Nat (Set a)])) (list\mix (function (_ bundle [amount set]) [(n.+ amount (value@ #amount bundle)) (set.union set (lens bundle))]) diff --git a/stdlib/source/test/lux/macro/code.lux b/stdlib/source/test/lux/macro/code.lux index 666e8734c..5cacd6851 100644 --- a/stdlib/source/test/lux/macro/code.lux +++ b/stdlib/source/test/lux/macro/code.lux @@ -36,13 +36,13 @@ (random.and ..random_text ..random_text)) (def: (random_sequence random) - (All [a] (-> (Random a) (Random (List a)))) + (All (_ a) (-> (Random a) (Random (List a)))) (do {! random.monad} [size (|> random.nat (\ ! each (n.% 3)))] (random.list size random))) (def: (random_record random) - (All [a] (-> (Random a) (Random (List [a a])))) + (All (_ a) (-> (Random a) (Random (List [a a])))) (do {! random.monad} [size (|> random.nat (\ ! each (n.% 3)))] (random.list size (random.and random random)))) diff --git a/stdlib/source/test/lux/math/modular.lux b/stdlib/source/test/lux/math/modular.lux index 8d4e69ab7..037563d64 100644 --- a/stdlib/source/test/lux/math/modular.lux +++ b/stdlib/source/test/lux/math/modular.lux @@ -29,7 +29,7 @@ ["#" modulus]]]]) (def: .public (random modulus) - (All [%] (-> (//.Modulus %) (Random (/.Mod %)))) + (All (_ %) (-> (//.Modulus %) (Random (/.Mod %)))) (\ random.monad each (/.modular modulus) random.int)) diff --git a/stdlib/source/test/lux/math/modulus.lux b/stdlib/source/test/lux/math/modulus.lux index 54ceeac1d..018fcf73a 100644 --- a/stdlib/source/test/lux/math/modulus.lux +++ b/stdlib/source/test/lux/math/modulus.lux @@ -26,7 +26,7 @@ _ (.int divisor))))))) (def: .public (random range) - (Ex [%] (-> Int (Random (/.Modulus %)))) + (Ex (_ %) (-> Int (Random (/.Modulus %)))) (|> random.int (\ random.monad each (i.% range)) (random.one (|>> /.modulus try.maybe)))) diff --git a/stdlib/source/test/lux/math/number/i64.lux b/stdlib/source/test/lux/math/number/i64.lux index 851da2db3..6b7e84972 100644 --- a/stdlib/source/test/lux/math/number/i64.lux +++ b/stdlib/source/test/lux/math/number/i64.lux @@ -135,7 +135,7 @@ .int ++)] expected (\ ! each (i.% limit) random.int) - .let [random (: (All [size] + .let [random (: (All (_ size) (-> (-> I64 (I64 size)) (Random (I64 size)))) (function (_ narrow) (\ random.functor each narrow random.i64)))]] diff --git a/stdlib/source/test/lux/meta/annotation.lux b/stdlib/source/test/lux/meta/annotation.lux index c9a0f6946..772a403ad 100644 --- a/stdlib/source/test/lux/meta/annotation.lux +++ b/stdlib/source/test/lux/meta/annotation.lux @@ -34,13 +34,13 @@ (random.ascii/alpha 1))) (def: (random_sequence random) - (All [a] (-> (Random a) (Random (List a)))) + (All (_ a) (-> (Random a) (Random (List a)))) (do {! random.monad} [size (|> random.nat (\ ! each (nat.% 3)))] (random.list size random))) (def: (random_record random) - (All [a] (-> (Random a) (Random (List [a a])))) + (All (_ a) (-> (Random a) (Random (List [a a])))) (do {! random.monad} [size (|> random.nat (\ ! each (nat.% 3)))] (random.list size (random.and random random)))) diff --git a/stdlib/source/test/lux/static.lux b/stdlib/source/test/lux/static.lux index d54751f43..15f1ab316 100644 --- a/stdlib/source/test/lux/static.lux +++ b/stdlib/source/test/lux/static.lux @@ -2,6 +2,7 @@ [library [lux #* ["_" test (#+ Test)] + ["@" target] ["." meta] [data ["." text ("#\." equivalence) @@ -21,56 +22,57 @@ (def: .public test Test (<| (_.covering /._) - (_.for [meta.eval]) - (`` ($_ _.and - (~~ (template [ <=> <+> ] - [(_.cover [ ] - (with_expansions [ () - () - ( (<+> ))] - (case (' ) - [_ ( l+r)] - (<=> l+r (<+> )) + (for {@.old (_.test "PLACEHOLDER" true)} + (_.for [meta.eval] + (`` ($_ _.and + (~~ (template [ <=> <+> ] + [(_.cover [ ] + (with_expansions [ () + () + ( (<+> ))] + (case (' ) + [_ ( l+r)] + (<=> l+r (<+> )) - _ - false)))] + _ + false)))] - [/.nat /.random_nat n.= n.+ #.Nat] - [/.int /.random_int i.= i.+ #.Int] - [/.rev /.random_rev r.= r.+ #.Rev] - )) - (_.cover [/.frac /.random_frac] - (with_expansions [ (/.random_frac) - (/.random_frac) - (/.frac (f.+ ))] - (case (' ) - [_ (#.Frac l+r)] - (or (f.= l+r (f.+ )) - (and (f.not_a_number? l+r) - (f.not_a_number? (f.+ )) - (or (f.not_a_number? ) - (f.not_a_number? )))) + [/.nat /.random_nat n.= n.+ #.Nat] + [/.int /.random_int i.= i.+ #.Int] + [/.rev /.random_rev r.= r.+ #.Rev] + )) + (_.cover [/.frac /.random_frac] + (with_expansions [ (/.random_frac) + (/.random_frac) + (/.frac (f.+ ))] + (case (' ) + [_ (#.Frac l+r)] + (or (f.= l+r (f.+ )) + (and (f.not_a_number? l+r) + (f.not_a_number? (f.+ )) + (or (f.not_a_number? ) + (f.not_a_number? )))) - _ - false))) - (_.cover [/.text /.random] - (with_expansions [ (/.random code.text (random.ascii/alpha_num 1)) - (/.random code.text (random.ascii/alpha_num 1)) - (/.text (format ))] - (case (' ) - [_ (#.Text l+r)] - (text\= l+r (format )) + _ + false))) + (_.cover [/.text /.random] + (with_expansions [ (/.random code.text (random.ascii/alpha_num 1)) + (/.random code.text (random.ascii/alpha_num 1)) + (/.text (format ))] + (case (' ) + [_ (#.Text l+r)] + (text\= l+r (format )) - _ - false))) - (_.cover [/.literal] - (with_expansions [ (/.random code.text (random.ascii/alpha_num 1)) - (/.random code.text (random.ascii/alpha_num 1)) - (/.literal code.text (format ))] - (case (' ) - [_ (#.Text l+r)] - (text\= l+r (format )) + _ + false))) + (_.cover [/.literal] + (with_expansions [ (/.random code.text (random.ascii/alpha_num 1)) + (/.random code.text (random.ascii/alpha_num 1)) + (/.literal code.text (format ))] + (case (' ) + [_ (#.Text l+r)] + (text\= l+r (format )) - _ - false))) - )))) + _ + false))) + )))))) diff --git a/stdlib/source/test/lux/target/jvm.lux b/stdlib/source/test/lux/target/jvm.lux index 541e7c763..9494096f2 100644 --- a/stdlib/source/test/lux/target/jvm.lux +++ b/stdlib/source/test/lux/target/jvm.lux @@ -922,7 +922,7 @@ _ constructor _ ?length] $Long::wrap)))) - write_and_read (: (All [a] + write_and_read (: (All (_ a) (-> Nat (Bytecode Any) a (-> a (Bytecode Any)) [(Bytecode Any) (Bytecode Any) (Bytecode Any)] @@ -937,7 +937,7 @@ _ /.dup _ !index _ (literal value) _ *store _ /.dup _ !index _ *load] *wrap))))) - array (: (All [a] + array (: (All (_ a) (-> (Bytecode Any) (Random a) (-> a (Bytecode Any)) [(Bytecode Any) (Bytecode Any) (Bytecode Any)] (-> a Any Bit) @@ -1048,7 +1048,7 @@ (def: conversion Test - (let [conversion (: (All [a z] + (let [conversion (: (All (_ a z) (-> (Primitive a) (Primitive z) (Bytecode Any) (-> a z) (-> z Any Bit) (Random Bit))) (function (_ from to instruction convert test) (do random.monad @@ -1121,7 +1121,7 @@ (def: registry Test - (let [store_and_load (: (All [a] + (let [store_and_load (: (All (_ a) (-> (Random a) (-> a (Bytecode Any)) (Bytecode Any) [(-> Nat (Bytecode Any)) (-> Nat (Bytecode Any))] (-> a (-> Any Bit)) @@ -1317,7 +1317,7 @@ (def: return Test - (let [primitive_return (: (All [a] (-> (Primitive a) (Bytecode Any) (Maybe (-> a (Bytecode Any))) (-> a Any Bit) (Random Bit))) + (let [primitive_return (: (All (_ a) (-> (Primitive a) (Bytecode Any) (Maybe (-> a (Bytecode Any))) (-> a Any Bit) (Random Bit))) (function (_ primitive return substitute test) (do random.monad [class_name ..class_name diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/function.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/function.lux index d87321459..57aa3ec5a 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/function.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/function.lux @@ -60,10 +60,10 @@ (<| (_.context (%.name (name_of /.function))) ($_ _.and (_.test "Can analyse function." - (and (|> (//type.with_type (All [a] (-> a outputT)) + (and (|> (//type.with_type (All (_ a) (-> a outputT)) (/.function _primitive.phase func_name arg_name archive.empty outputC)) _structure.check_succeeds) - (|> (//type.with_type (All [a] (-> a a)) + (|> (//type.with_type (All (_ a) (-> a a)) (/.function _primitive.phase func_name arg_name archive.empty g!arg)) _structure.check_succeeds))) (_.test "Generic functions can always be specialized." diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/structure.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/structure.lux index 4802c0910..6dd4bde12 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/structure.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/analysis/structure.lux @@ -41,7 +41,7 @@ (template [ ] [(def: .public - (All [a] (-> (Operation a) Bit)) + (All (_ a) (-> (Operation a) Bit)) (|>> (phase.result _primitive.state) (case> (#try.Success _) @@ -78,7 +78,7 @@ false))) (def: (with_tags module tags type) - (All [a] (-> Text (List //module.Tag) Type (Operation a) (Operation [Module a]))) + (All (_ a) (-> Text (List //module.Tag) Type (Operation a) (Operation [Module a]))) (|>> (do phase.monad [_ (//module.declare_tags tags false type)]) (//module.with_module 0 module))) diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/case.lux b/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/case.lux index f3eb32f4e..c39978c4f 100644 --- a/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/case.lux +++ b/stdlib/source/test/lux/tool/compiler/language/lux/phase/synthesis/case.lux @@ -181,7 +181,7 @@ #analysis.then (analysis.nat else)})]]))) (def: (random_five hash random_element) - (All [a] (-> (Hash a) (Random a) (Random [a a a a a]))) + (All (_ a) (-> (Hash a) (Random a) (Random [a a a a a]))) (|> random_element (random.set hash 5) (\ random.monad each (|>> set.list diff --git a/stdlib/source/test/lux/type/check.lux b/stdlib/source/test/lux/type/check.lux index 4674890ca..57ea22d70 100644 --- a/stdlib/source/test/lux/type/check.lux +++ b/stdlib/source/test/lux/type/check.lux @@ -89,11 +89,11 @@ #0)) (def: injection - (Injection (All [a] (/.Check a))) + (Injection (All (_ a) (/.Check a))) (\ /.monad in)) (def: comparison - (Comparison (All [a] (/.Check a))) + (Comparison (All (_ a) (/.Check a))) (function (_ == left right) (case [(/.result /.fresh_context left) (/.result /.fresh_context right)] [(#try.Success left) (#try.Success right)] @@ -314,7 +314,7 @@ )) (def: succeeds? - (All [a] (-> (/.Check a) Bit)) + (All (_ a) (-> (/.Check a) Bit)) (|>> (/.result /.fresh_context) (case> (#try.Success _) true @@ -323,7 +323,7 @@ false))) (def: fails? - (All [a] (-> (/.Check a) Bit)) + (All (_ a) (-> (/.Check a) Bit)) (|>> ..succeeds? not)) @@ -334,14 +334,14 @@ (in (#.Primitive name (list))))) (def: (non_twins = random) - (All [a] (-> (-> a a Bit) (Random a) (Random [a a]))) + (All (_ a) (-> (-> a a Bit) (Random a) (Random [a a]))) (do random.monad [left random right (random.only (|>> (= left) not) random)] (in [left right]))) (type: Super - (Ex [sub] [Text sub])) + (Ex (_ sub) [Text sub])) (type: Sub (Super Bit)) @@ -403,7 +403,7 @@ functions_have_covariant_outputs!))) (def: (verdict check) - (All [_] (-> (/.Check _) (/.Check Bit))) + (All (_ _) (-> (/.Check _) (/.Check Bit))) (function (_ context) (#try.Success [context (case (check context) (#try.Success _) @@ -526,28 +526,28 @@ (def: (handles_quantification! nominal) (-> Type Bit) (let [universals_satisfy_themselves! - (..succeeds? (/.check (.type (All [a] (Maybe a))) - (.type (All [a] (Maybe a))))) + (..succeeds? (/.check (.type (All (_ a) (Maybe a))) + (.type (All (_ a) (Maybe a))))) existentials_satisfy_themselves! - (..succeeds? (/.check (.type (Ex [a] (Maybe a))) - (.type (Ex [a] (Maybe a))))) + (..succeeds? (/.check (.type (Ex (_ a) (Maybe a))) + (.type (Ex (_ a) (Maybe a))))) universals_satisfy_particulars! (..succeeds? (/.check (.type (Maybe nominal)) - (.type (All [a] (Maybe a))))) + (.type (All (_ a) (Maybe a))))) particulars_do_not_satisfy_universals! - (..fails? (/.check (.type (All [a] (Maybe a))) + (..fails? (/.check (.type (All (_ a) (Maybe a))) (.type (Maybe nominal)))) particulars_satisfy_existentials! - (..succeeds? (/.check (.type (Ex [a] (Maybe a))) + (..succeeds? (/.check (.type (Ex (_ a) (Maybe a))) (.type (Maybe nominal)))) existentials_do_not_satisfy_particulars! (..fails? (/.check (.type (Maybe nominal)) - (.type (Ex [a] (Maybe a)))))] + (.type (Ex (_ a) (Maybe a)))))] (and universals_satisfy_themselves! existentials_satisfy_themselves! @@ -585,26 +585,26 @@ (def: (handles_application! nominal/0 nominal/1) (-> Type Type Bit) (let [types_flow_through! - (and (..succeeds? (/.check (.type ((All [a] a) nominal/0)) + (and (..succeeds? (/.check (.type ((All (_ a) a) nominal/0)) nominal/0)) (..succeeds? (/.check nominal/0 - (.type ((All [a] a) nominal/0)))) + (.type ((All (_ a) a) nominal/0)))) - (..succeeds? (/.check (.type ((Ex [a] a) nominal/0)) + (..succeeds? (/.check (.type ((Ex (_ a) a) nominal/0)) nominal/0)) (..succeeds? (/.check nominal/0 - (.type ((Ex [a] a) nominal/0))))) + (.type ((Ex (_ a) a) nominal/0))))) multiple_parameters! - (and (..succeeds? (/.check (.type ((All [a b] [a b]) nominal/0 nominal/1)) + (and (..succeeds? (/.check (.type ((All (_ a b) [a b]) nominal/0 nominal/1)) (.type [nominal/0 nominal/1]))) (..succeeds? (/.check (.type [nominal/0 nominal/1]) - (.type ((All [a b] [a b]) nominal/0 nominal/1)))) + (.type ((All (_ a b) [a b]) nominal/0 nominal/1)))) - (..succeeds? (/.check (.type ((Ex [a b] [a b]) nominal/0 nominal/1)) + (..succeeds? (/.check (.type ((Ex (_ a b) [a b]) nominal/0 nominal/1)) (.type [nominal/0 nominal/1]))) (..succeeds? (/.check (.type [nominal/0 nominal/1]) - (.type ((Ex [a b] [a b]) nominal/0 nominal/1)))))] + (.type ((Ex (_ a b) [a b]) nominal/0 nominal/1)))))] (and types_flow_through! multiple_parameters!))) @@ -798,10 +798,10 @@ (Random Bit) (do random.monad [example ..clean_type] - (in (and (and (/.subsumes? (.type (List example)) (.type (All [a] (List a)))) - (not (/.subsumes? (.type (All [a] (List a))) (.type (List example))))) - (and (/.subsumes? (.type (Ex [a] (List a))) (.type (List example))) - (not (/.subsumes? (.type (List example)) (.type (Ex [a] (List a)))))))))) + (in (and (and (/.subsumes? (.type (List example)) (.type (All (_ a) (List a)))) + (not (/.subsumes? (.type (All (_ a) (List a))) (.type (List example))))) + (and (/.subsumes? (.type (Ex (_ a) (List a))) (.type (List example))) + (not (/.subsumes? (.type (List example)) (.type (Ex (_ a) (List a)))))))))) (def: for_subsumption|named (Random Bit) diff --git a/stdlib/source/test/lux/type/poly/json.lux b/stdlib/source/test/lux/type/poly/json.lux index 2a7c17814..9b6d5338a 100644 --- a/stdlib/source/test/lux/type/poly/json.lux +++ b/stdlib/source/test/lux/type/poly/json.lux @@ -85,7 +85,7 @@ gen_recursive))))) (def: qty - (All [unit] (Random (unit.Qty unit))) + (All (_ unit) (Random (unit.Qty unit))) (\ random.monad each (debug.private unit.in) random.int)) (def: gen_record diff --git a/stdlib/source/test/lux/type/quotient.lux b/stdlib/source/test/lux/type/quotient.lux index 806187b03..dffce036a 100644 --- a/stdlib/source/test/lux/type/quotient.lux +++ b/stdlib/source/test/lux/type/quotient.lux @@ -17,7 +17,7 @@ ["." /]]) (def: .public (random class super) - (All [t c %] (-> (/.Class t c %) (Random t) (Random (/.Quotient t c %)))) + (All (_ t c %) (-> (/.Class t c %) (Random t) (Random (/.Quotient t c %)))) (\ random.monad each (/.quotient class) super)) (def: mod_10_class diff --git a/stdlib/source/test/lux/type/variance.lux b/stdlib/source/test/lux/type/variance.lux index b2a16a221..9126bd215 100644 --- a/stdlib/source/test/lux/type/variance.lux +++ b/stdlib/source/test/lux/type/variance.lux @@ -12,7 +12,7 @@ ["#." check]]]]) (type: Super - (Ex [sub] [Text sub])) + (Ex (_ sub) [Text sub])) (type: Sub (Super Bit)) -- cgit v1.2.3