aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library
diff options
context:
space:
mode:
authorEduardo Julian2022-06-30 22:53:23 -0400
committerEduardo Julian2022-06-30 22:53:23 -0400
commita8d76e48df01d0f5326faa8456797f91cb2cbeba (patch)
tree7a7a3d1e934a694e1cc4e3246dc21c2fe3093cf3 /stdlib/source/library
parent565fe5a2e60ff3c6b612031d1c3bb89f330751da (diff)
Alternative names for (un)quoting macros.
Diffstat (limited to '')
-rw-r--r--stdlib/source/library/lux.lux52
-rw-r--r--stdlib/source/library/lux/control/concatenative.lux6
-rw-r--r--stdlib/source/library/lux/control/concurrency/actor.lux5
-rw-r--r--stdlib/source/library/lux/control/concurrency/async.lux7
-rw-r--r--stdlib/source/library/lux/control/concurrency/atom.lux7
-rw-r--r--stdlib/source/library/lux/control/concurrency/frp.lux5
-rw-r--r--stdlib/source/library/lux/control/concurrency/semaphore.lux7
-rw-r--r--stdlib/source/library/lux/control/concurrency/stm.lux7
-rw-r--r--stdlib/source/library/lux/control/function/memo.lux5
-rw-r--r--stdlib/source/library/lux/control/io.lux7
-rw-r--r--stdlib/source/library/lux/control/lazy.lux5
-rw-r--r--stdlib/source/library/lux/control/security/capability.lux5
-rw-r--r--stdlib/source/library/lux/control/security/policy.lux5
-rw-r--r--stdlib/source/library/lux/control/thread.lux7
-rw-r--r--stdlib/source/library/lux/data/collection/array.lux5
-rw-r--r--stdlib/source/library/lux/data/collection/queue/priority.lux5
-rw-r--r--stdlib/source/library/lux/data/collection/set/multi.lux5
-rw-r--r--stdlib/source/library/lux/data/collection/set/ordered.lux5
-rw-r--r--stdlib/source/library/lux/data/collection/stack.lux5
-rw-r--r--stdlib/source/library/lux/data/collection/tree/finger.lux5
-rw-r--r--stdlib/source/library/lux/data/color.lux5
-rw-r--r--stdlib/source/library/lux/data/format/css.lux5
-rw-r--r--stdlib/source/library/lux/data/format/css/class.lux5
-rw-r--r--stdlib/source/library/lux/data/format/css/id.lux5
-rw-r--r--stdlib/source/library/lux/data/format/css/property.lux9
-rw-r--r--stdlib/source/library/lux/data/format/css/query.lux5
-rw-r--r--stdlib/source/library/lux/data/format/css/selector.lux7
-rw-r--r--stdlib/source/library/lux/data/format/css/style.lux5
-rw-r--r--stdlib/source/library/lux/data/format/css/value.lux5
-rw-r--r--stdlib/source/library/lux/data/format/html.lux5
-rw-r--r--stdlib/source/library/lux/data/format/markdown.lux7
-rw-r--r--stdlib/source/library/lux/data/format/tar.lux5
-rw-r--r--stdlib/source/library/lux/data/text/buffer.lux5
-rw-r--r--stdlib/source/library/lux/data/text/encoding.lux5
-rw-r--r--stdlib/source/library/lux/data/text/unicode/block.lux5
-rw-r--r--stdlib/source/library/lux/data/text/unicode/set.lux5
-rw-r--r--stdlib/source/library/lux/data/trace.lux3
-rw-r--r--stdlib/source/library/lux/debug.lux5
-rw-r--r--stdlib/source/library/lux/documentation.lux4
-rw-r--r--stdlib/source/library/lux/ffi.jvm.lux5
-rw-r--r--stdlib/source/library/lux/ffi.lux5
-rw-r--r--stdlib/source/library/lux/ffi.old.lux4
-rw-r--r--stdlib/source/library/lux/ffi.php.lux8
-rw-r--r--stdlib/source/library/lux/ffi.scm.lux8
-rw-r--r--stdlib/source/library/lux/locale.lux5
-rw-r--r--stdlib/source/library/lux/locale/language.lux7
-rw-r--r--stdlib/source/library/lux/locale/territory.lux7
-rw-r--r--stdlib/source/library/lux/math.lux5
-rw-r--r--stdlib/source/library/lux/math/modular.lux5
-rw-r--r--stdlib/source/library/lux/math/modulus.lux5
-rw-r--r--stdlib/source/library/lux/math/number/i16.lux3
-rw-r--r--stdlib/source/library/lux/math/number/i32.lux5
-rw-r--r--stdlib/source/library/lux/math/number/i8.lux5
-rw-r--r--stdlib/source/library/lux/math/random.lux5
-rw-r--r--stdlib/source/library/lux/meta/type.lux (renamed from stdlib/source/library/lux/type.lux)0
-rw-r--r--stdlib/source/library/lux/meta/type/check.lux (renamed from stdlib/source/library/lux/type/check.lux)0
-rw-r--r--stdlib/source/library/lux/meta/type/dynamic.lux (renamed from stdlib/source/library/lux/type/dynamic.lux)8
-rw-r--r--stdlib/source/library/lux/meta/type/implicit.lux (renamed from stdlib/source/library/lux/type/implicit.lux)160
-rw-r--r--stdlib/source/library/lux/meta/type/poly.lux (renamed from stdlib/source/library/lux/type/poly.lux)28
-rw-r--r--stdlib/source/library/lux/meta/type/primitive.lux (renamed from stdlib/source/library/lux/type/primitive.lux)0
-rw-r--r--stdlib/source/library/lux/meta/type/quotient.lux (renamed from stdlib/source/library/lux/type/quotient.lux)8
-rw-r--r--stdlib/source/library/lux/meta/type/refinement.lux (renamed from stdlib/source/library/lux/type/refinement.lux)8
-rw-r--r--stdlib/source/library/lux/meta/type/resource.lux (renamed from stdlib/source/library/lux/type/resource.lux)6
-rw-r--r--stdlib/source/library/lux/meta/type/unit.lux (renamed from stdlib/source/library/lux/type/unit.lux)0
-rw-r--r--stdlib/source/library/lux/meta/type/unit/scale.lux (renamed from stdlib/source/library/lux/type/unit/scale.lux)0
-rw-r--r--stdlib/source/library/lux/meta/type/variance.lux (renamed from stdlib/source/library/lux/type/variance.lux)0
-rw-r--r--stdlib/source/library/lux/target/common_lisp.lux5
-rw-r--r--stdlib/source/library/lux/target/js.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/bytecode/address.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/bytecode/environment/limit/registry.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/bytecode/environment/limit/stack.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/bytecode/instruction.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/constant.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/constant/tag.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/encoding/name.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/encoding/signed.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/encoding/unsigned.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/index.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/modifier.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/modifier/inner.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/type.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/type/category.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/type/descriptor.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/type/lux.lux7
-rw-r--r--stdlib/source/library/lux/target/jvm/type/reflection.lux5
-rw-r--r--stdlib/source/library/lux/target/jvm/type/signature.lux5
-rw-r--r--stdlib/source/library/lux/target/lua.lux5
-rw-r--r--stdlib/source/library/lux/target/php.lux5
-rw-r--r--stdlib/source/library/lux/target/python.lux5
-rw-r--r--stdlib/source/library/lux/target/r.lux5
-rw-r--r--stdlib/source/library/lux/target/ruby.lux5
-rw-r--r--stdlib/source/library/lux/target/scheme.lux5
-rw-r--r--stdlib/source/library/lux/time.lux5
-rw-r--r--stdlib/source/library/lux/time/date.lux5
-rw-r--r--stdlib/source/library/lux/time/duration.lux5
-rw-r--r--stdlib/source/library/lux/time/instant.lux5
-rw-r--r--stdlib/source/library/lux/time/year.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/default/platform.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/analysis/evaluation.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/analysis/inference.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/analysis/type.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/case.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/complex.lux9
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/function.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/r.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/meta/archive.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/meta/archive/key.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/meta/archive/module/document.lux5
-rw-r--r--stdlib/source/library/lux/tool/compiler/meta/archive/registry.lux5
-rw-r--r--stdlib/source/library/lux/world/file/watch.lux17
118 files changed, 474 insertions, 369 deletions
diff --git a/stdlib/source/library/lux.lux b/stdlib/source/library/lux.lux
index 439fb69e3..d142387b3 100644
--- a/stdlib/source/library/lux.lux
+++ b/stdlib/source/library/lux.lux
@@ -1326,9 +1326,9 @@
(p x))}
xs))
-(def' .private (with_location location content)
- (-> Location Code Code)
- (let' [[module line column] location]
+(def' .private (with_location content)
+ (-> Code Code)
+ (let' [[module line column] ..dummy_location]
(tuple$ (list (tuple$ (list (text$ module) (nat$ line) (nat$ column)))
content))))
@@ -1587,9 +1587,9 @@
(symbol$ [..prelude "List"])))]
(form$ (list (text$ "lux type check") type expression))))
-(def' .private (untemplated_text location value)
- (-> Location Text Code)
- (with_location location (variant$ (list (symbol$ [..prelude "#Text"]) (text$ value)))))
+(def' .private (untemplated_text value)
+ (-> Text Code)
+ (with_location (variant$ (list (symbol$ [..prelude "#Text"]) (text$ value)))))
(def' .public UnQuote
Type
@@ -1902,7 +1902,7 @@
(do meta#monad
[=elements (monad#each meta#monad (untemplated replace? subst) elements)]
(in (untemplated_list =elements))))
- .let' [[_ output'] (with_location @composite (variant$ (list (symbol$ [..prelude tag]) output)))]]
+ .let' [[_ output'] (with_location (variant$ (list (symbol$ [..prelude tag]) output)))]]
(in [@composite output'])))
(def' .private untemplated_form
@@ -1923,22 +1923,22 @@
(def' .private (untemplated replace? subst token)
(-> Bit Text Code ($' Meta Code))
({[_ [@token {#Bit value}]]
- (meta#in (with_location @token (variant$ (list (symbol$ [..prelude "#Bit"]) (bit$ value)))))
+ (meta#in (with_location (variant$ (list (symbol$ [..prelude "#Bit"]) (bit$ value)))))
[_ [@token {#Nat value}]]
- (meta#in (with_location @token (variant$ (list (symbol$ [..prelude "#Nat"]) (nat$ value)))))
+ (meta#in (with_location (variant$ (list (symbol$ [..prelude "#Nat"]) (nat$ value)))))
[_ [@token {#Int value}]]
- (meta#in (with_location @token (variant$ (list (symbol$ [..prelude "#Int"]) (int$ value)))))
+ (meta#in (with_location (variant$ (list (symbol$ [..prelude "#Int"]) (int$ value)))))
[_ [@token {#Rev value}]]
- (meta#in (with_location @token (variant$ (list (symbol$ [..prelude "#Rev"]) (rev$ value)))))
+ (meta#in (with_location (variant$ (list (symbol$ [..prelude "#Rev"]) (rev$ value)))))
[_ [@token {#Frac value}]]
- (meta#in (with_location @token (variant$ (list (symbol$ [..prelude "#Frac"]) (frac$ value)))))
+ (meta#in (with_location (variant$ (list (symbol$ [..prelude "#Frac"]) (frac$ value)))))
[_ [@token {#Text value}]]
- (meta#in (untemplated_text @token value))
+ (meta#in (untemplated_text value))
[#1 [@token {#Symbol [module name]}]]
(do meta#monad
@@ -1951,10 +1951,10 @@
(in [module name])}
module)
.let' [[module name] real_name]]
- (meta#in (with_location @token (variant$ (list (symbol$ [..prelude "#Symbol"]) (tuple$ (list (text$ module) (text$ name))))))))
+ (meta#in (with_location (variant$ (list (symbol$ [..prelude "#Symbol"]) (tuple$ (list (text$ module) (text$ name))))))))
[#0 [@token {#Symbol [module name]}]]
- (meta#in (with_location @token (variant$ (list (symbol$ [..prelude "#Symbol"]) (tuple$ (list (text$ module) (text$ name)))))))
+ (meta#in (with_location (variant$ (list (symbol$ [..prelude "#Symbol"]) (tuple$ (list (text$ module) (text$ name)))))))
[#1 [@composite {#Form {#Item [@symbol {#Symbol global}] parameters}}]]
(do meta#monad
@@ -2011,6 +2011,8 @@
(failure (wrong_syntax_error [..prelude "`"]))}
tokens)))
+(def' .public syntax_quote Macro `)
+
(def' .public `'
Macro
(macro (_ tokens)
@@ -2023,6 +2025,8 @@
(failure (wrong_syntax_error [..prelude "`'"]))}
tokens)))
+(def' .public partial_quote Macro `')
+
(def' .public '
Macro
(macro (_ tokens)
@@ -2035,6 +2039,8 @@
(failure (wrong_syntax_error [..prelude "'"]))}
tokens)))
+(def' .public literal_quote Macro ')
+
(def' .public ~
UnQuote
(..unquote
@@ -2048,6 +2054,8 @@
(failure (wrong_syntax_error [..prelude "~"]))}
tokens))))
+(def' .public but UnQuote ~)
+
(def' .public ~!
UnQuote
(..unquote
@@ -2056,15 +2064,17 @@
(do meta#monad
[current_module ..current_module_name
independent (untemplated #1 current_module [@token dependent])]
- (in (list (with_location @token (variant$ (list (symbol$ [..prelude "#Form"])
- (untemplated_list (list (untemplated_text dummy_location "lux in-module")
- (untemplated_text dummy_location current_module)
- independent))))))))
+ (in (list (with_location (variant$ (list (symbol$ [..prelude "#Form"])
+ (untemplated_list (list (untemplated_text "lux in-module")
+ (untemplated_text current_module)
+ independent))))))))
_
(failure (wrong_syntax_error [..prelude "~!"]))}
tokens))))
+(def' .public specifically UnQuote ~!)
+
(def' .public ~'
UnQuote
(..unquote
@@ -2079,6 +2089,8 @@
(failure (wrong_syntax_error [..prelude "~'"]))}
tokens))))
+(def' .public literally UnQuote ~')
+
(def' .public ~+
Spliced_UnQuote
(let' [g!list#composite (form$ (list (text$ "lux in-module")
@@ -2093,6 +2105,8 @@
(failure (wrong_syntax_error [..prelude "~+"]))}
tokens)))))
+(def' .public also Spliced_UnQuote ~+)
+
(def' .public |>
Macro
(macro (_ tokens)
diff --git a/stdlib/source/library/lux/control/concatenative.lux b/stdlib/source/library/lux/control/concatenative.lux
index 4e900a860..3a24dedfc 100644
--- a/stdlib/source/library/lux/control/concatenative.lux
+++ b/stdlib/source/library/lux/control/concatenative.lux
@@ -1,8 +1,6 @@
(.require
[library
[lux (.except Alias if loop left right)
- ["[0]" meta]
- ["[0]" type]
[abstract
["[0]" monad]]
[control
@@ -23,7 +21,9 @@
["n" nat]
["i" int]
["r" rev]
- ["f" frac]]]]]
+ ["f" frac]]]
+ ["[0]" meta (.only)
+ ["[0]" type]]]]
[//
["<>" parser (.use "[1]#[0]" monad)]])
diff --git a/stdlib/source/library/lux/control/concurrency/actor.lux b/stdlib/source/library/lux/control/concurrency/actor.lux
index ce8daea6a..f6141f32d 100644
--- a/stdlib/source/library/lux/control/concurrency/actor.lux
+++ b/stdlib/source/library/lux/control/concurrency/actor.lux
@@ -13,8 +13,9 @@
["[0]" product]]
[macro
["[0]" local]]
- [type (.only sharing)
- [primitive (.only primitive representation abstraction)]]]]
+ [meta
+ [type (.only sharing)
+ [primitive (.only primitive representation abstraction)]]]]]
[//
["[0]" atom (.only Atom atom)]
["[0]" async (.only Async Resolver)]
diff --git a/stdlib/source/library/lux/control/concurrency/async.lux b/stdlib/source/library/lux/control/concurrency/async.lux
index 40b2760b0..0098f0f1b 100644
--- a/stdlib/source/library/lux/control/concurrency/async.lux
+++ b/stdlib/source/library/lux/control/concurrency/async.lux
@@ -14,9 +14,10 @@
["[0]" product]]
[macro
["^" pattern]]
- [type (.only sharing)
- [primitive (.except)]
- ["[0]" variance (.only Mutable)]]]]
+ [meta
+ [type (.only sharing)
+ [primitive (.except)]
+ ["[0]" variance (.only Mutable)]]]]]
[//
["[0]" thread]
["[0]" atom (.only Atom atom)]])
diff --git a/stdlib/source/library/lux/control/concurrency/atom.lux b/stdlib/source/library/lux/control/concurrency/atom.lux
index 65a981c44..3c81d2841 100644
--- a/stdlib/source/library/lux/control/concurrency/atom.lux
+++ b/stdlib/source/library/lux/control/concurrency/atom.lux
@@ -13,9 +13,10 @@
[collection
["[0]" array
["[1]" \\unsafe]]]]
- [type
- [primitive (.except)]
- ["[0]" variance (.only Mutable)]]]])
+ [meta
+ [type
+ [primitive (.except)]
+ ["[0]" variance (.only Mutable)]]]]])
(with_expansions [<jvm> (these (ffi.import (java/util/concurrent/atomic/AtomicReference a)
"[1]::[0]"
diff --git a/stdlib/source/library/lux/control/concurrency/frp.lux b/stdlib/source/library/lux/control/concurrency/frp.lux
index 3cf496cf1..1311d9b3d 100644
--- a/stdlib/source/library/lux/control/concurrency/frp.lux
+++ b/stdlib/source/library/lux/control/concurrency/frp.lux
@@ -11,8 +11,9 @@
["[0]" try (.only Try)]
["[0]" exception (.only exception)]
["[0]" io (.only IO io)]]
- [type (.only sharing)
- ["[0]" variance (.only Mutable)]]]]
+ [meta
+ [type (.only sharing)
+ ["[0]" variance (.only Mutable)]]]]]
[//
["[0]" atom (.only Atom)]
["[0]" async (.only Async Async') (.use "[1]#[0]" monad)]])
diff --git a/stdlib/source/library/lux/control/concurrency/semaphore.lux b/stdlib/source/library/lux/control/concurrency/semaphore.lux
index db74c0728..2b6b0692f 100644
--- a/stdlib/source/library/lux/control/concurrency/semaphore.lux
+++ b/stdlib/source/library/lux/control/concurrency/semaphore.lux
@@ -17,9 +17,10 @@
[number
["n" nat]
["i" int]]]
- [type
- ["[0]" primitive (.except)]
- ["[0]" refinement]]]]
+ [meta
+ [type
+ ["[0]" primitive (.except)]
+ ["[0]" refinement]]]]]
[//
["[0]" atom (.only Atom)]
["[0]" async (.only Async Resolver)]])
diff --git a/stdlib/source/library/lux/control/concurrency/stm.lux b/stdlib/source/library/lux/control/concurrency/stm.lux
index 3dfeeec5c..3beedf568 100644
--- a/stdlib/source/library/lux/control/concurrency/stm.lux
+++ b/stdlib/source/library/lux/control/concurrency/stm.lux
@@ -15,9 +15,10 @@
["[0]" list]]]
[macro
["^" pattern]]
- [type (.only sharing)
- [primitive (.except)]
- ["[0]" variance (.only Mutable)]]]]
+ [meta
+ [type (.only sharing)
+ [primitive (.except)]
+ ["[0]" variance (.only Mutable)]]]]]
[//
["[0]" atom (.only Atom atom)]
["[0]" async (.only Async Resolver)]
diff --git a/stdlib/source/library/lux/control/function/memo.lux b/stdlib/source/library/lux/control/function/memo.lux
index f39cb33e3..3328720e2 100644
--- a/stdlib/source/library/lux/control/function/memo.lux
+++ b/stdlib/source/library/lux/control/function/memo.lux
@@ -4,7 +4,6 @@
(.require
[library
[lux (.except open)
- ["[0]" type]
[abstract
[hash (.only Hash)]
[monad (.only do)]]
@@ -13,7 +12,9 @@
[data
["[0]" product]
[collection
- ["[0]" dictionary (.only Dictionary)]]]]]
+ ["[0]" dictionary (.only Dictionary)]]]
+ [meta
+ ["[0]" type]]]]
["[0]" //
["[1]" mixin (.only Mixin Recursive)]])
diff --git a/stdlib/source/library/lux/control/io.lux b/stdlib/source/library/lux/control/io.lux
index 609814844..13eda4b75 100644
--- a/stdlib/source/library/lux/control/io.lux
+++ b/stdlib/source/library/lux/control/io.lux
@@ -5,13 +5,14 @@
[functor (.only Functor)]
[apply (.only Apply)]
[monad (.only Monad do)]]
- [type
- [primitive (.except)]]
[macro (.only with_symbols)
[syntax (.only syntax)]
["[0]" template]
["[0]" code
- ["<[1]>" \\parser]]]]])
+ ["<[1]>" \\parser]]]
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive .public (IO a)
(-> Any a)
diff --git a/stdlib/source/library/lux/control/lazy.lux b/stdlib/source/library/lux/control/lazy.lux
index b20711ba7..d2bf0531f 100644
--- a/stdlib/source/library/lux/control/lazy.lux
+++ b/stdlib/source/library/lux/control/lazy.lux
@@ -14,8 +14,9 @@
[syntax (.only syntax)]
["[0]" code
["<[1]>" \\parser]]]
- [type (.only sharing)
- [primitive (.except)]]]])
+ [meta
+ [type (.only sharing)
+ [primitive (.except)]]]]])
(primitive .public (Lazy a)
(-> [] a)
diff --git a/stdlib/source/library/lux/control/security/capability.lux b/stdlib/source/library/lux/control/security/capability.lux
index 96813f726..90a503c3a 100644
--- a/stdlib/source/library/lux/control/security/capability.lux
+++ b/stdlib/source/library/lux/control/security/capability.lux
@@ -13,8 +13,9 @@
["%" \\format (.only format)]]
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
- [type
- [primitive (.except)]]
+ [meta
+ [type
+ [primitive (.except)]]]
["[0]" meta]
["[0]" macro (.only)
["[0]" code (.only)
diff --git a/stdlib/source/library/lux/control/security/policy.lux b/stdlib/source/library/lux/control/security/policy.lux
index 963f0377f..2aa55af59 100644
--- a/stdlib/source/library/lux/control/security/policy.lux
+++ b/stdlib/source/library/lux/control/security/policy.lux
@@ -5,8 +5,9 @@
[functor (.only Functor)]
[apply (.only Apply)]
[monad (.only Monad)]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive .public (Policy brand value label)
value
diff --git a/stdlib/source/library/lux/control/thread.lux b/stdlib/source/library/lux/control/thread.lux
index 69591de05..0b43c9344 100644
--- a/stdlib/source/library/lux/control/thread.lux
+++ b/stdlib/source/library/lux/control/thread.lux
@@ -12,9 +12,10 @@
[collection
["[0]" array
["[1]" \\unsafe (.only Array)]]]]
- [type
- [primitive (.except)]
- ["[0]" variance (.only Mutable)]]]])
+ [meta
+ [type
+ [primitive (.except)]
+ ["[0]" variance (.only Mutable)]]]]])
(type .public (Thread ! a)
(-> ! a))
diff --git a/stdlib/source/library/lux/data/collection/array.lux b/stdlib/source/library/lux/data/collection/array.lux
index 06704ae38..40e8c6599 100644
--- a/stdlib/source/library/lux/data/collection/array.lux
+++ b/stdlib/source/library/lux/data/collection/array.lux
@@ -12,8 +12,9 @@
[data
[collection
["[0]" list]]]
- [type
- [variance (.only)]]]]
+ [meta
+ [type
+ [variance (.only)]]]]]
["!" \\unsafe])
(def .public type_name
diff --git a/stdlib/source/library/lux/data/collection/queue/priority.lux b/stdlib/source/library/lux/data/collection/queue/priority.lux
index c860daae8..0d02d0a09 100644
--- a/stdlib/source/library/lux/data/collection/queue/priority.lux
+++ b/stdlib/source/library/lux/data/collection/queue/priority.lux
@@ -13,8 +13,9 @@
[math
[number
["n" nat (.use "[1]#[0]" interval)]]]
- [type (.only by_example)
- [primitive (.only primitive abstraction representation)]]]])
+ [meta
+ [type (.only by_example)
+ [primitive (.only primitive abstraction representation)]]]]])
(type .public Priority
Nat)
diff --git a/stdlib/source/library/lux/data/collection/set/multi.lux b/stdlib/source/library/lux/data/collection/set/multi.lux
index 82c89f817..0b0f1735e 100644
--- a/stdlib/source/library/lux/data/collection/set/multi.lux
+++ b/stdlib/source/library/lux/data/collection/set/multi.lux
@@ -13,8 +13,9 @@
[math
[number
["n" nat]]]
- [type
- ["[0]" primitive (.only primitive abstraction representation)]]]]
+ [meta
+ [type
+ ["[0]" primitive (.only primitive abstraction representation)]]]]]
["[0]" // (.only)
[//
["[0]" list (.use "[1]#[0]" mix monoid)]
diff --git a/stdlib/source/library/lux/data/collection/set/ordered.lux b/stdlib/source/library/lux/data/collection/set/ordered.lux
index f24c059bd..dc209c092 100644
--- a/stdlib/source/library/lux/data/collection/set/ordered.lux
+++ b/stdlib/source/library/lux/data/collection/set/ordered.lux
@@ -9,8 +9,9 @@
["[0]" list (.use "[1]#[0]" mix)]
[dictionary
["/" ordered]]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive .public (Set a)
(/.Dictionary a a)
diff --git a/stdlib/source/library/lux/data/collection/stack.lux b/stdlib/source/library/lux/data/collection/stack.lux
index 726cdada0..c53ba235a 100644
--- a/stdlib/source/library/lux/data/collection/stack.lux
+++ b/stdlib/source/library/lux/data/collection/stack.lux
@@ -7,8 +7,9 @@
[data
[collection
["//" list]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive .public (Stack a)
(List a)
diff --git a/stdlib/source/library/lux/data/collection/tree/finger.lux b/stdlib/source/library/lux/data/collection/tree/finger.lux
index 72ef03d8e..b8a654516 100644
--- a/stdlib/source/library/lux/data/collection/tree/finger.lux
+++ b/stdlib/source/library/lux/data/collection/tree/finger.lux
@@ -9,8 +9,9 @@
[data
[collection
["[0]" list (.use "[1]#[0]" monoid)]]]
- [type
- [primitive (.only primitive abstraction representation)]]]])
+ [meta
+ [type
+ [primitive (.only primitive abstraction representation)]]]]])
... https://en.wikipedia.org/wiki/Finger_tree
(primitive .public (Tree @ t v)
diff --git a/stdlib/source/library/lux/data/color.lux b/stdlib/source/library/lux/data/color.lux
index de3ee1d99..bbccf6b7b 100644
--- a/stdlib/source/library/lux/data/color.lux
+++ b/stdlib/source/library/lux/data/color.lux
@@ -15,8 +15,9 @@
["[0]" int]
["[0]" rev (.use "[1]#[0]" interval)]
["[0]" i64]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(def rgb_limit 256)
(def top (-- rgb_limit))
diff --git a/stdlib/source/library/lux/data/format/css.lux b/stdlib/source/library/lux/data/format/css.lux
index 30e9c4153..80b0623cd 100644
--- a/stdlib/source/library/lux/data/format/css.lux
+++ b/stdlib/source/library/lux/data/format/css.lux
@@ -12,8 +12,9 @@
[math
[number
["[0]" nat]]]
- [type
- [primitive (.except Frame pattern)]]
+ [meta
+ [type
+ [primitive (.except Frame pattern)]]]
[world
[net (.only URL)]]]]
["[0]" /
diff --git a/stdlib/source/library/lux/data/format/css/class.lux b/stdlib/source/library/lux/data/format/css/class.lux
index a2aa3d00d..95ecbb9dc 100644
--- a/stdlib/source/library/lux/data/format/css/class.lux
+++ b/stdlib/source/library/lux/data/format/css/class.lux
@@ -10,8 +10,9 @@
[macro
[syntax (.only syntax)]
["[0]" code]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive .public Class
Text
diff --git a/stdlib/source/library/lux/data/format/css/id.lux b/stdlib/source/library/lux/data/format/css/id.lux
index 7d833ca6c..d4ce16d6a 100644
--- a/stdlib/source/library/lux/data/format/css/id.lux
+++ b/stdlib/source/library/lux/data/format/css/id.lux
@@ -10,8 +10,9 @@
[macro
[syntax (.only syntax)]
["[0]" code]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive .public ID
Text
diff --git a/stdlib/source/library/lux/data/format/css/property.lux b/stdlib/source/library/lux/data/format/css/property.lux
index 6d4413240..089e117c2 100644
--- a/stdlib/source/library/lux/data/format/css/property.lux
+++ b/stdlib/source/library/lux/data/format/css/property.lux
@@ -6,12 +6,13 @@
["s" code]]]
[data
["[0]" text]]
- [type
- [primitive (.except)]]
[macro
+ [syntax (.only syntax)]
["[0]" template]
- ["[0]" code]
- [syntax (.only syntax)]]]]
+ ["[0]" code]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
[//
[value (.only All
Number
diff --git a/stdlib/source/library/lux/data/format/css/query.lux b/stdlib/source/library/lux/data/format/css/query.lux
index cce106c61..ec39e8425 100644
--- a/stdlib/source/library/lux/data/format/css/query.lux
+++ b/stdlib/source/library/lux/data/format/css/query.lux
@@ -11,8 +11,9 @@
["[0]" template]
["[0]" code]
[syntax (.only syntax)]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
["[1][0]" value (.only Value Length Count Resolution Ratio
Orientation Scan Boolean Update
diff --git a/stdlib/source/library/lux/data/format/css/selector.lux b/stdlib/source/library/lux/data/format/css/selector.lux
index 5993f5c89..1e8d3e0b9 100644
--- a/stdlib/source/library/lux/data/format/css/selector.lux
+++ b/stdlib/source/library/lux/data/format/css/selector.lux
@@ -8,10 +8,11 @@
[math
[number
["i" int]]]
- [type
- [primitive (.except)]]
[macro
- ["[0]" template]]]]
+ ["[0]" template]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
["[1][0]" id (.only ID)]
["[1][0]" class (.only Class)]])
diff --git a/stdlib/source/library/lux/data/format/css/style.lux b/stdlib/source/library/lux/data/format/css/style.lux
index 1f055636f..4e459fd17 100644
--- a/stdlib/source/library/lux/data/format/css/style.lux
+++ b/stdlib/source/library/lux/data/format/css/style.lux
@@ -6,8 +6,9 @@
["%" \\format (.only format)]]
[collection
["[0]" list (.use "[1]#[0]" mix)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
["[1][0]" value (.only Value)]
["[1][0]" property (.only Property)]])
diff --git a/stdlib/source/library/lux/data/format/css/value.lux b/stdlib/source/library/lux/data/format/css/value.lux
index 6dab6619e..14d2a2cec 100644
--- a/stdlib/source/library/lux/data/format/css/value.lux
+++ b/stdlib/source/library/lux/data/format/css/value.lux
@@ -21,8 +21,9 @@
["i" int]
["r" rev]
["f" frac]]]
- [type
- [primitive (.except)]]
+ [meta
+ [type
+ [primitive (.except)]]]
[world
[net (.only URL)]]]]
[//
diff --git a/stdlib/source/library/lux/data/format/html.lux b/stdlib/source/library/lux/data/format/html.lux
index f27ec9173..d6560ccfe 100644
--- a/stdlib/source/library/lux/data/format/html.lux
+++ b/stdlib/source/library/lux/data/format/html.lux
@@ -12,10 +12,11 @@
["[0]" list (.use "[1]#[0]" functor mix)]]]
[macro
["[0]" template]]
+ [meta
+ [type
+ [primitive (.except)]]]
[target
["[0]" js]]
- [type
- [primitive (.except)]]
[world
[net (.only URL)]]]]
[//
diff --git a/stdlib/source/library/lux/data/format/markdown.lux b/stdlib/source/library/lux/data/format/markdown.lux
index 21843dd90..ad8a20186 100644
--- a/stdlib/source/library/lux/data/format/markdown.lux
+++ b/stdlib/source/library/lux/data/format/markdown.lux
@@ -6,10 +6,11 @@
["%" \\format (.only format)]]
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
- [type
- [primitive (.except)]]
[world
- [net (.only URL)]]]])
+ [net (.only URL)]]
+ [meta
+ [type
+ [primitive (.except)]]]]])
... https://www.markdownguide.org/basic-syntax/
diff --git a/stdlib/source/library/lux/data/format/tar.lux b/stdlib/source/library/lux/data/format/tar.lux
index 07c493b97..e0ed3924f 100644
--- a/stdlib/source/library/lux/data/format/tar.lux
+++ b/stdlib/source/library/lux/data/format/tar.lux
@@ -35,8 +35,9 @@
["[0]" duration]]
[world
["[0]" file]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(type Size
Nat)
diff --git a/stdlib/source/library/lux/data/text/buffer.lux b/stdlib/source/library/lux/data/text/buffer.lux
index fbb58c96f..e8b4e496f 100644
--- a/stdlib/source/library/lux/data/text/buffer.lux
+++ b/stdlib/source/library/lux/data/text/buffer.lux
@@ -15,8 +15,9 @@
[math
[number
["n" nat]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //])
(with_expansions [<jvm> (these (import java/lang/CharSequence
diff --git a/stdlib/source/library/lux/data/text/encoding.lux b/stdlib/source/library/lux/data/text/encoding.lux
index 836fc8a49..25b91cfc0 100644
--- a/stdlib/source/library/lux/data/text/encoding.lux
+++ b/stdlib/source/library/lux/data/text/encoding.lux
@@ -3,8 +3,9 @@
[lux (.except)
[macro
["[0]" template]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
... https://en.wikipedia.org/wiki/Character_encoding#Common_character_encodings
(primitive .public Encoding
diff --git a/stdlib/source/library/lux/data/text/unicode/block.lux b/stdlib/source/library/lux/data/text/unicode/block.lux
index c08d296e4..bb61c05be 100644
--- a/stdlib/source/library/lux/data/text/unicode/block.lux
+++ b/stdlib/source/library/lux/data/text/unicode/block.lux
@@ -10,8 +10,9 @@
[number (.only hex)
["n" nat (.use "[1]#[0]" interval)]
["[0]" i64]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
[/// (.only Char)])
(primitive .public Block
diff --git a/stdlib/source/library/lux/data/text/unicode/set.lux b/stdlib/source/library/lux/data/text/unicode/set.lux
index 961b597ef..13c5d4f47 100644
--- a/stdlib/source/library/lux/data/text/unicode/set.lux
+++ b/stdlib/source/library/lux/data/text/unicode/set.lux
@@ -9,8 +9,9 @@
["[0]" set (.use "[1]#[0]" equivalence)]
["[0]" tree
["[1]" finger (.only Tree)]]]]
- [type (.only by_example)
- [primitive (.except)]]]]
+ [meta
+ [type (.only by_example)
+ [primitive (.except)]]]]]
["[0]" /
["/[1]" //
[// (.only Char)]
diff --git a/stdlib/source/library/lux/data/trace.lux b/stdlib/source/library/lux/data/trace.lux
index e7032aef1..af741e922 100644
--- a/stdlib/source/library/lux/data/trace.lux
+++ b/stdlib/source/library/lux/data/trace.lux
@@ -4,8 +4,7 @@
[abstract
["[0]" monoid (.only Monoid)]
[functor (.only Functor)]
- comonad]
- function]])
+ comonad]]])
(type .public (Trace t a)
(Record
diff --git a/stdlib/source/library/lux/debug.lux b/stdlib/source/library/lux/debug.lux
index fa9e36cff..78160f4cd 100644
--- a/stdlib/source/library/lux/debug.lux
+++ b/stdlib/source/library/lux/debug.lux
@@ -39,8 +39,9 @@
[date (.only Date)]
[month (.only Month)]
[day (.only Day)]]
- ["[0]" type (.only)
- ["<[1]>" \\parser (.only Parser)]]]])
+ [meta
+ ["[0]" type (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]])
(with_expansions [<jvm> (these (import java/lang/String
"[1]::[0]")
diff --git a/stdlib/source/library/lux/documentation.lux b/stdlib/source/library/lux/documentation.lux
index 2fd1b2bdf..3f7df3b4e 100644
--- a/stdlib/source/library/lux/documentation.lux
+++ b/stdlib/source/library/lux/documentation.lux
@@ -1,8 +1,6 @@
(.require
[library
[lux (.except Definition Module type)
- ["[0]" meta]
- ["[0]" type (.use "[1]#[0]" equivalence)]
[abstract
[monad (.only do)]
["[0]" enum]]
@@ -29,6 +27,8 @@
[math
[number
["n" nat]]]
+ ["[0]" meta (.only)
+ ["[0]" type (.use "[1]#[0]" equivalence)]]
[tool
[compiler
[language
diff --git a/stdlib/source/library/lux/ffi.jvm.lux b/stdlib/source/library/lux/ffi.jvm.lux
index a31b1df99..69090b80f 100644
--- a/stdlib/source/library/lux/ffi.jvm.lux
+++ b/stdlib/source/library/lux/ffi.jvm.lux
@@ -40,8 +40,9 @@
["[0]" signature]
["[0]" reflection]
["[0]" parser]]]]
- ["[0]" type (.use "[1]#[0]" equivalence)
- ["[0]" check]]]])
+ [meta
+ ["[0]" type (.use "[1]#[0]" equivalence)
+ ["[0]" check]]]]])
(def internal
(-> External Text)
diff --git a/stdlib/source/library/lux/ffi.lux b/stdlib/source/library/lux/ffi.lux
index 103d2babd..44e4e685e 100644
--- a/stdlib/source/library/lux/ffi.lux
+++ b/stdlib/source/library/lux/ffi.lux
@@ -22,8 +22,9 @@
["<[1]>" \\parser (.only Parser)]]]
["@" target (.only)
["[0]" js]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(with_expansions [<constant> (for @.js "js constant"
@.python "python constant"
diff --git a/stdlib/source/library/lux/ffi.old.lux b/stdlib/source/library/lux/ffi.old.lux
index a199b5012..f713ebf1c 100644
--- a/stdlib/source/library/lux/ffi.old.lux
+++ b/stdlib/source/library/lux/ffi.old.lux
@@ -1,7 +1,6 @@
(.require
[library
[lux (.except is as type)
- ["[0]" type (.use "[1]#[0]" equivalence)]
[abstract
["[0]" monad (.only Monad do)]
["[0]" enum]]
@@ -25,7 +24,8 @@
["[0]" template]
["[0]" code (.only)
["<[1]>" \\parser (.only Parser)]]]
- ["[0]" meta]]])
+ ["[0]" meta (.only)
+ ["[0]" type (.use "[1]#[0]" equivalence)]]]])
(with_template [<name> <op> <from> <to>]
[(def .public (<name> value)
diff --git a/stdlib/source/library/lux/ffi.php.lux b/stdlib/source/library/lux/ffi.php.lux
index f5f357021..a720cc6f1 100644
--- a/stdlib/source/library/lux/ffi.php.lux
+++ b/stdlib/source/library/lux/ffi.php.lux
@@ -2,7 +2,6 @@
[library
[lux (.except Alias)
["@" target]
- ["[0]" meta]
[abstract
[monad (.only do)]]
[control
@@ -15,13 +14,14 @@
["%" \\format]]
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
- [type
- abstract]
[macro (.only with_symbols)
[syntax (.only syntax)]
["[0]" template]
["[0]" code (.only)
- ["<[1]>" \\parser (.only Parser)]]]]])
+ ["<[1]>" \\parser (.only Parser)]]]
+ ["[0]" meta (.only)
+ [type
+ abstract]]]])
(primitive .public (Object brand) Any)
diff --git a/stdlib/source/library/lux/ffi.scm.lux b/stdlib/source/library/lux/ffi.scm.lux
index 27f8c4f4f..679a9b58e 100644
--- a/stdlib/source/library/lux/ffi.scm.lux
+++ b/stdlib/source/library/lux/ffi.scm.lux
@@ -2,7 +2,6 @@
[library
[lux (.except Alias)
["@" target]
- ["[0]" meta]
[abstract
[monad (.only do)]]
[control
@@ -15,13 +14,14 @@
["%" \\format (.only format)]]
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
- [type
- abstract]
[macro (.only with_symbols)
[syntax (.only syntax)]
["[0]" template]
["[0]" code (.only)
- ["<[1]>" \\parser (.only Parser)]]]]])
+ ["<[1]>" \\parser (.only Parser)]]]
+ ["[0]" meta (.only)
+ [type
+ abstract]]]])
(primitive .public (Object brand) Any)
diff --git a/stdlib/source/library/lux/locale.lux b/stdlib/source/library/lux/locale.lux
index d1c97493d..6cd384586 100644
--- a/stdlib/source/library/lux/locale.lux
+++ b/stdlib/source/library/lux/locale.lux
@@ -10,8 +10,9 @@
["[0]" text (.only)
["%" \\format (.only format)]
["[0]" encoding (.only Encoding)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
[/
["[0]" language (.only Language)]
["[0]" territory (.only Territory)]])
diff --git a/stdlib/source/library/lux/locale/language.lux b/stdlib/source/library/lux/locale/language.lux
index bab86a699..f5d9b051f 100644
--- a/stdlib/source/library/lux/locale/language.lux
+++ b/stdlib/source/library/lux/locale/language.lux
@@ -6,10 +6,11 @@
[hash (.only Hash)]]
[data
["[0]" text]]
- [type
- [primitive (.except)]]
[macro
- ["[0]" template]]]])
+ ["[0]" template]]
+ [meta
+ [type
+ [primitive (.except)]]]]])
... https://en.wikipedia.org/wiki/List_of_ISO_639-2_codes
(primitive .public Language
diff --git a/stdlib/source/library/lux/locale/territory.lux b/stdlib/source/library/lux/locale/territory.lux
index 9688d691d..f89f8a619 100644
--- a/stdlib/source/library/lux/locale/territory.lux
+++ b/stdlib/source/library/lux/locale/territory.lux
@@ -6,10 +6,11 @@
[hash (.only Hash)]]
[data
["[0]" text]]
- [type
- [primitive (.except)]]
[macro
- ["[0]" template]]]])
+ ["[0]" template]]
+ [meta
+ [type
+ [primitive (.except)]]]]])
... https://en.wikipedia.org/wiki/ISO_3166-1
(primitive .public Territory
diff --git a/stdlib/source/library/lux/math.lux b/stdlib/source/library/lux/math.lux
index 63f2e931c..d5b8f2629 100644
--- a/stdlib/source/library/lux/math.lux
+++ b/stdlib/source/library/lux/math.lux
@@ -29,8 +29,9 @@
["[0]" type]]]]
[meta
[archive (.only Archive)]]]]
- [type
- ["[0]" check]]]]
+ [meta
+ [type
+ ["[0]" check]]]]]
[/
["[0]" random]
[number
diff --git a/stdlib/source/library/lux/math/modular.lux b/stdlib/source/library/lux/math/modular.lux
index 489f798ab..b2ae0a5b3 100644
--- a/stdlib/source/library/lux/math/modular.lux
+++ b/stdlib/source/library/lux/math/modular.lux
@@ -21,8 +21,9 @@
[math
[number
["i" int (.use "[1]#[0]" decimal)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
["[1]" modulus (.only Modulus)]])
diff --git a/stdlib/source/library/lux/math/modulus.lux b/stdlib/source/library/lux/math/modulus.lux
index d440669ae..333946b3d 100644
--- a/stdlib/source/library/lux/math/modulus.lux
+++ b/stdlib/source/library/lux/math/modulus.lux
@@ -14,8 +14,9 @@
[math
[number
["i" int]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(exception .public zero_cannot_be_a_modulus)
diff --git a/stdlib/source/library/lux/math/number/i16.lux b/stdlib/source/library/lux/math/number/i16.lux
index 446e5f71b..b83bf1f72 100644
--- a/stdlib/source/library/lux/math/number/i16.lux
+++ b/stdlib/source/library/lux/math/number/i16.lux
@@ -5,7 +5,8 @@
[equivalence (.only Equivalence)]]
[control
["[0]" maybe]]
- [type (.only by_example)]]]
+ [meta
+ [type (.only by_example)]]]]
[//
["[0]" i64 (.only Sub)]])
diff --git a/stdlib/source/library/lux/math/number/i32.lux b/stdlib/source/library/lux/math/number/i32.lux
index 262dc3eb4..4423f3098 100644
--- a/stdlib/source/library/lux/math/number/i32.lux
+++ b/stdlib/source/library/lux/math/number/i32.lux
@@ -1,11 +1,12 @@
(.require
[library
[lux (.except i64)
- [type (.only by_example)]
[abstract
[equivalence (.only Equivalence)]]
[control
- ["[0]" maybe]]]]
+ ["[0]" maybe]]
+ [meta
+ [type (.only by_example)]]]]
[//
["[0]" i64 (.only Sub)]])
diff --git a/stdlib/source/library/lux/math/number/i8.lux b/stdlib/source/library/lux/math/number/i8.lux
index 0ea292821..49ccad042 100644
--- a/stdlib/source/library/lux/math/number/i8.lux
+++ b/stdlib/source/library/lux/math/number/i8.lux
@@ -1,11 +1,12 @@
(.require
[library
[lux (.except i64)
- [type (.only by_example)]
[abstract
[equivalence (.only Equivalence)]]
[control
- ["[0]" maybe]]]]
+ ["[0]" maybe]]
+ [meta
+ [type (.only by_example)]]]]
[//
["[0]" i64 (.only Sub)]])
diff --git a/stdlib/source/library/lux/math/random.lux b/stdlib/source/library/lux/math/random.lux
index 89ae2ef53..7ebf577d7 100644
--- a/stdlib/source/library/lux/math/random.lux
+++ b/stdlib/source/library/lux/math/random.lux
@@ -34,8 +34,9 @@
["[0]" duration (.only Duration)]
["[0]" month (.only Month)]
["[0]" day (.only Day)]]
- [type
- [refinement (.only Refiner Refined)]]]])
+ [meta
+ [type
+ [refinement (.only Refiner Refined)]]]]])
(type .public PRNG
(Rec PRNG
diff --git a/stdlib/source/library/lux/type.lux b/stdlib/source/library/lux/meta/type.lux
index 00afaddc0..00afaddc0 100644
--- a/stdlib/source/library/lux/type.lux
+++ b/stdlib/source/library/lux/meta/type.lux
diff --git a/stdlib/source/library/lux/type/check.lux b/stdlib/source/library/lux/meta/type/check.lux
index cb49cc6e4..cb49cc6e4 100644
--- a/stdlib/source/library/lux/type/check.lux
+++ b/stdlib/source/library/lux/meta/type/check.lux
diff --git a/stdlib/source/library/lux/type/dynamic.lux b/stdlib/source/library/lux/meta/type/dynamic.lux
index fd98afcdf..86ccf5753 100644
--- a/stdlib/source/library/lux/type/dynamic.lux
+++ b/stdlib/source/library/lux/meta/type/dynamic.lux
@@ -11,9 +11,9 @@
[macro (.only with_symbols)
["[0]" syntax (.only syntax)]
["[0]" code
- ["<[1]>" \\parser]]]
- ["[0]" type (.only)
- ["[0]" primitive (.only primitive)]]]])
+ ["<[1]>" \\parser]]]]]
+ ["[0]" // (.only)
+ ["[0]" primitive (.only primitive)]])
(exception .public (wrong_type [expected Type
actual Type])
@@ -44,7 +44,7 @@
(with_symbols [g!type g!value]
(in (list (` (.let [[(~ g!type) (~ g!value)] ((~! ..representation) (~ value))]
(.is ((~! try.Try) (~ type))
- (.if (.at (~! type.equivalence) (~' =)
+ (.if (.at (~! //.equivalence) (~' =)
(.type_literal (~ type)) (~ g!type))
{try.#Success (.as (~ type) (~ g!value))}
((~! exception.except) ..wrong_type [(.type_literal (~ type)) (~ g!type)]))))))))))
diff --git a/stdlib/source/library/lux/type/implicit.lux b/stdlib/source/library/lux/meta/type/implicit.lux
index f831c551b..977467202 100644
--- a/stdlib/source/library/lux/type/implicit.lux
+++ b/stdlib/source/library/lux/meta/type/implicit.lux
@@ -21,10 +21,10 @@
["<[1]>" \\parser (.only Parser)]]]
[math
["[0]" number (.only)
- ["n" nat]]]
- ["[0]" meta]
- ["[0]" type (.use "[1]#[0]" equivalence)
- ["[0]" check (.only Check)]]]])
+ ["n" nat]]]]]
+ ["[0]" // (.use "[1]#[0]" equivalence)
+ ["/[1]" //]
+ ["[0]" check (.only Check)]])
(def (type_var id env)
(-> Nat Type_Context (Meta Type))
@@ -36,20 +36,20 @@
(type_var id' env)
_
- (at meta.monad in type))
+ (at ///.monad in type))
{.#Some [_ {.#None}]}
- (meta.failure (format "Unbound type-var " (%.nat id)))
+ (///.failure (format "Unbound type-var " (%.nat id)))
{.#None}
- (meta.failure (format "Unknown type-var " (%.nat id)))
+ (///.failure (format "Unknown type-var " (%.nat id)))
))
(def (implicit_type var_name)
(-> Symbol (Meta Type))
- (do meta.monad
- [raw_type (meta.type var_name)
- compiler meta.compiler_state]
+ (do ///.monad
+ [raw_type (///.type var_name)
+ compiler ///.compiler_state]
(case raw_type
{.#Var id}
(type_var id (the .#type_context compiler))
@@ -64,7 +64,7 @@
(member_type idx sig_type')
{.#Apply arg func}
- (case (type.applied (list arg) func)
+ (case (//.applied (list arg) func)
{.#None}
(check.failure (format "Cannot apply type " (%.type func) " to type " (%.type arg)))
@@ -85,52 +85,52 @@
(-> Symbol (Meta Symbol))
(case member
["" simple_name]
- (meta.either (do meta.monad
- [member (meta.normal member)
- _ (meta.slot member)]
- (in member))
- (do [! meta.monad]
- [this_module_name meta.current_module_name
- imp_mods (meta.imported_modules this_module_name)
- tag_lists (monad.each ! meta.tag_lists imp_mods)
- .let [tag_lists (|> tag_lists list#conjoint (list#each product.left) list#conjoint)
- candidates (list.only (|>> product.right (text#= simple_name))
- tag_lists)]]
- (case candidates
- {.#End}
- (meta.failure (format "Unknown tag: " (%.symbol member)))
-
- {.#Item winner {.#End}}
- (in winner)
-
- _
- (meta.failure (format "Too many candidate tags: " (%.list %.symbol candidates))))))
+ (///.either (do ///.monad
+ [member (///.normal member)
+ _ (///.slot member)]
+ (in member))
+ (do [! ///.monad]
+ [this_module_name ///.current_module_name
+ imp_mods (///.imported_modules this_module_name)
+ tag_lists (monad.each ! ///.tag_lists imp_mods)
+ .let [tag_lists (|> tag_lists list#conjoint (list#each product.left) list#conjoint)
+ candidates (list.only (|>> product.right (text#= simple_name))
+ tag_lists)]]
+ (case candidates
+ {.#End}
+ (///.failure (format "Unknown tag: " (%.symbol member)))
+
+ {.#Item winner {.#End}}
+ (in winner)
+
+ _
+ (///.failure (format "Too many candidate tags: " (%.list %.symbol candidates))))))
_
- (at meta.monad in member)))
+ (at ///.monad in member)))
(def (implicit_member member)
(-> Symbol (Meta [Nat Type]))
- (do meta.monad
+ (do ///.monad
[member (member_name member)
- [idx tag_list sig_type] (meta.slot member)]
+ [idx tag_list sig_type] (///.slot member)]
(in [idx sig_type])))
(def (compatible_type? interface candidate)
(-> Type Type Bit)
- (with_expansions [<found?> (type#= interface candidate)]
+ (with_expansions [<found?> (//#= interface candidate)]
(<| (or <found?>)
- (let [[parameters candidate] (type.flat_univ_q candidate)])
+ (let [[parameters candidate] (//.flat_univ_q candidate)])
(or <found?>)
- (let [[inputs candidate] (type.flat_function candidate)])
+ (let [[inputs candidate] (//.flat_function candidate)])
(or <found?>)
- (let [[candidate parameters] (type.flat_application candidate)])
+ (let [[candidate parameters] (//.flat_application candidate)])
(or <found?>)
- (let [candidate (type.de_aliased candidate)])
+ (let [candidate (//.de_aliased candidate)])
<found?>)))
(def (available_definitions sig_type source_module target_module constants aggregate)
@@ -146,8 +146,8 @@
(def (local_env sig_type)
(-> Type (Meta (List [Symbol Type])))
- (do meta.monad
- [local_batches meta.locals
+ (do ///.monad
+ [local_batches ///.locals
.let [total_locals (list#mix (function (_ [name type] table)
(try.else table (dictionary.has' name type table)))
(is (Dictionary Text Type)
@@ -162,17 +162,17 @@
(def (local_structs sig_type)
(-> Type (Meta (List [Symbol Type])))
- (do [! meta.monad]
- [this_module_name meta.current_module_name
- definitions (meta.definitions this_module_name)]
+ (do [! ///.monad]
+ [this_module_name ///.current_module_name
+ definitions (///.definitions this_module_name)]
(in (available_definitions sig_type this_module_name this_module_name definitions {.#End}))))
(def (imported_structs sig_type)
(-> Type (Meta (List [Symbol Type])))
- (do [! meta.monad]
- [this_module_name meta.current_module_name
- imported_modules (meta.imported_modules this_module_name)
- accessible_definitions (monad.each ! meta.definitions imported_modules)]
+ (do [! ///.monad]
+ [this_module_name ///.current_module_name
+ imported_modules (///.imported_modules this_module_name)
+ accessible_definitions (monad.each ! ///.definitions imported_modules)]
(in (list#mix (function (_ [imported_module definitions] tail)
(available_definitions sig_type imported_module this_module_name definitions tail))
{.#End}
@@ -188,7 +188,7 @@
(do check.monad
[[id var] check.var]
(|> func
- (type.applied (list var))
+ (//.applied (list var))
maybe.trusted
(on_argument arg)))
@@ -206,7 +206,7 @@
{.#UnivQ _}
(do check.monad
[[id var] check.var
- [ids final_output] (concrete_type (maybe.trusted (type.applied (list var) type)))]
+ [ids final_output] (concrete_type (maybe.trusted (//.applied (list var) type)))]
(in [{.#Item id ids}
final_output]))
@@ -229,14 +229,14 @@
(-> (-> Lux Type_Context Type (Check Instance))
Type_Context Type (List [Symbol Type])
(Meta (List Instance)))
- (do meta.monad
- [compiler meta.compiler_state]
+ (do ///.monad
+ [compiler ///.compiler_state]
(case (|> alts
(list#each (function (_ [alt_name alt_type])
(case (check.result context
(do [! check.monad]
[[tvars alt_type] (concrete_type alt_type)
- .let [[deps alt_type] (type.flat_function alt_type)]
+ .let [[deps alt_type] (//.flat_function alt_type)]
_ (check.check dep alt_type)
context' check.context
=deps (monad.each ! (provision compiler context') deps)]
@@ -248,18 +248,18 @@
(list [alt_name =deps]))))
list#conjoint)
{.#End}
- (meta.failure (format "No candidates for provisioning: " (%.type dep)))
+ (///.failure (format "No candidates for provisioning: " (%.type dep)))
found
(in found))))
(def (provision sig_type compiler context dep)
(-> Type Lux Type_Context Type (Check Instance))
- (case (meta.result compiler
- (all meta.either
- (do meta.monad [alts (..local_env sig_type)] (..candidate_provision (provision sig_type) context dep alts))
- (do meta.monad [alts (..local_structs sig_type)] (..candidate_provision (provision sig_type) context dep alts))
- (do meta.monad [alts (..imported_structs sig_type)] (..candidate_provision (provision sig_type) context dep alts))))
+ (case (///.result compiler
+ (all ///.either
+ (do ///.monad [alts (..local_env sig_type)] (..candidate_provision (provision sig_type) context dep alts))
+ (do ///.monad [alts (..local_structs sig_type)] (..candidate_provision (provision sig_type) context dep alts))
+ (do ///.monad [alts (..imported_structs sig_type)] (..candidate_provision (provision sig_type) context dep alts))))
{.#Left error}
(check.failure error)
@@ -277,15 +277,15 @@
(def (candidate_alternatives sig_type member_idx input_types output_type alts)
(-> Type Nat (List Type) Type (List [Symbol Type]) (Meta (List Instance)))
- (do meta.monad
- [compiler meta.compiler_state
- context meta.type_context]
+ (do ///.monad
+ [compiler ///.compiler_state
+ context ///.type_context]
(case (|> alts
(list#each (function (_ [alt_name alt_type])
(case (<| (check.result context)
(do [! check.monad]
[[tvars alt_type] (concrete_type alt_type)
- .let [[deps alt_type] (type.flat_function alt_type)]
+ .let [[deps alt_type] (//.flat_function alt_type)]
_ (check.check alt_type sig_type)
member_type (member_type member_idx alt_type)
_ (ensure_function_application! member_type input_types output_type)
@@ -299,7 +299,7 @@
(list [alt_name =deps]))))
list#conjoint)
{.#End}
- (meta.failure (format "No alternatives for " (%.type (type.function input_types output_type))))
+ (///.failure (format "No alternatives for " (%.type (//.function input_types output_type))))
found
(in found))))
@@ -307,10 +307,10 @@
(def (alternatives sig_type member_idx input_types output_type)
(-> Type Nat (List Type) Type (Meta (List Instance)))
(let [test (candidate_alternatives sig_type member_idx input_types output_type)]
- (all meta.either
- (do meta.monad [alts (..local_env sig_type)] (test alts))
- (do meta.monad [alts (..local_structs sig_type)] (test alts))
- (do meta.monad [alts (..imported_structs sig_type)] (test alts)))))
+ (all ///.either
+ (do ///.monad [alts (..local_env sig_type)] (test alts))
+ (do ///.monad [alts (..local_structs sig_type)] (test alts))
+ (do ///.monad [alts (..imported_structs sig_type)] (test alts)))))
(def (var? input)
(-> Code Bit)
@@ -340,14 +340,14 @@
(<>.and (<>.some <code>.any) <code>.end))])
(case args
{.#Left [args _]}
- (do [! meta.monad]
+ (do [! ///.monad]
[[member_idx sig_type] (..implicit_member member)
input_types (monad.each ! ..implicit_type args)
- output_type meta.expected_type
+ output_type ///.expected_type
chosen_ones (alternatives sig_type member_idx input_types output_type)]
(case chosen_ones
{.#End}
- (meta.failure (format "No implementation could be found for member: " (%.symbol member)))
+ (///.failure (format "No implementation could be found for member: " (%.symbol member)))
{.#Item chosen {.#End}}
(in (list (` (.at (~ (instance$ chosen))
@@ -355,14 +355,14 @@
(~+ (list#each code.symbol args))))))
_
- (meta.failure (format "Too many implementations available: "
- (|> chosen_ones
- (list#each (|>> product.left %.symbol))
- (text.interposed ", "))
- " --- for type: " (%.type sig_type)))))
+ (///.failure (format "Too many implementations available: "
+ (|> chosen_ones
+ (list#each (|>> product.left %.symbol))
+ (text.interposed ", "))
+ " --- for type: " (%.type sig_type)))))
{.#Right [args _]}
- (do [! meta.monad]
+ (do [! ///.monad]
[labels (|> (macro.symbol "g!parameter")
(list.repeated (list.size args))
(monad.all !))]
@@ -377,12 +377,12 @@
(-> Nat (Meta (List Code)))
(|> (macro.symbol "g!implicit")
(list.repeated amount)
- (monad.all meta.monad)))
+ (monad.all ///.monad)))
(def .public with
(syntax (_ [implementations (<code>.tuple (<>.many <code>.any))
body <code>.any])
- (do meta.monad
+ (do ///.monad
[g!implicit+ (implicit_bindings (list.size implementations))]
(in (list (` (let [(~+ (|> (list.zipped_2 g!implicit+ implementations)
(list#each (function (_ [g!implicit implementation])
@@ -392,7 +392,7 @@
(def .public implicitly
(syntax (_ [implementations (<>.many <code>.any)])
- (do meta.monad
+ (do ///.monad
[g!implicit+ (implicit_bindings (list.size implementations))]
(in (|> (list.zipped_2 g!implicit+ implementations)
(list#each (function (_ [g!implicit implementation])
diff --git a/stdlib/source/library/lux/type/poly.lux b/stdlib/source/library/lux/meta/type/poly.lux
index 4f70bb937..95d9f8ea7 100644
--- a/stdlib/source/library/lux/type/poly.lux
+++ b/stdlib/source/library/lux/meta/type/poly.lux
@@ -1,7 +1,6 @@
(.require
[library
[lux (.except)
- ["[0]" meta]
[abstract
["[0]" monad (.only do)]]
[control
@@ -20,9 +19,10 @@
["<[1]>" \\parser (.only Parser)]]]
[math
[number
- ["n" nat]]]
- ["[0]" type (.only)
- ["<[1]>" \\parser (.only Env)]]]])
+ ["n" nat]]]]]
+ ["[0]" // (.only)
+ ["<[1]>" \\parser (.only Env)]
+ ["/[1]" //]])
(def .public polytypic
(syntax (_ [name <code>.local
@@ -30,18 +30,18 @@
(with_symbols [g!_ g!type g!output]
(let [g!name (code.symbol ["" name])]
(in (.list (` ((~! syntax) ((~ g!_) [(~ g!type) (~! <code>.any)])
- ((~! do) (~! meta.monad)
- [(~ g!type) ((~! meta.eval) .Type (~ g!type))]
+ ((~! do) (~! ///.monad)
+ [(~ g!type) ((~! ///.eval) .Type (~ g!type))]
(case (is (.Either .Text .Code)
- ((~! <type>.result) ((~! <>.rec)
- (function ((~ g!_) (~ g!name))
- (~ body)))
+ ((~! <//>.result) ((~! <>.rec)
+ (function ((~ g!_) (~ g!name))
+ (~ body)))
(.as .Type (~ g!type))))
{.#Right (~ g!output)}
((~' in) (.list (~ g!output)))
{.#Left (~ g!output)}
- ((~! meta.failure) (~ g!output))))))))))))
+ ((~! ///.failure) (~ g!output))))))))))))
(def .public (code env type)
(-> Env Type Code)
@@ -56,14 +56,14 @@
([.#Var] [.#Ex])
{.#Parameter idx}
- (let [idx (<type>.argument env idx)]
+ (let [idx (<//>.argument env idx)]
(if (n.= 0 idx)
(|> (dictionary.value idx env) maybe.trusted product.left (code env))
(` (.$ (~ (code.nat (-- idx)))))))
{.#Apply {.#Primitive "" {.#End}}
{.#Parameter idx}}
- (case (<type>.argument env idx)
+ (case (<//>.argument env idx)
0 (|> env (dictionary.value 0) maybe.trusted product.left (code env))
idx (undefined))
@@ -76,8 +76,8 @@
(^.with_template [<macro> <tag> <flattener>]
[{<tag> left right}
(` (<macro> (~+ (list#each (code env) (<flattener> type)))))])
- ([.Union .#Sum type.flat_variant]
- [.Tuple .#Product type.flat_tuple])
+ ([.Union .#Sum //.flat_variant]
+ [.Tuple .#Product //.flat_tuple])
{.#Named name sub_type}
(code.symbol name)
diff --git a/stdlib/source/library/lux/type/primitive.lux b/stdlib/source/library/lux/meta/type/primitive.lux
index 50c288e1c..50c288e1c 100644
--- a/stdlib/source/library/lux/type/primitive.lux
+++ b/stdlib/source/library/lux/meta/type/primitive.lux
diff --git a/stdlib/source/library/lux/type/quotient.lux b/stdlib/source/library/lux/meta/type/quotient.lux
index 98292553c..72088cd46 100644
--- a/stdlib/source/library/lux/type/quotient.lux
+++ b/stdlib/source/library/lux/meta/type/quotient.lux
@@ -6,9 +6,9 @@
[macro (.only with_symbols)
[syntax (.only syntax)]
["[0]" code
- ["<[1]>" \\parser]]]
- ["[0]" type
- [primitive (.except)]]]])
+ ["<[1]>" \\parser]]]]]
+ ["[0]" // (.only)
+ [primitive (.except)]])
(primitive .public (Class t c %)
(-> t c)
@@ -56,7 +56,7 @@
(~ g!_)
(.undefined))))
- ... (` ((~! type.by_example) [(~ g!t) (~ g!c) (~ g!%)]
+ ... (` ((~! //.by_example) [(~ g!t) (~ g!c) (~ g!%)]
... (is (..Class (~ g!t) (~ g!c) (~ g!%))
... (~ class))
... (..Quotient (~ g!t) (~ g!c) (~ g!%))))
diff --git a/stdlib/source/library/lux/type/refinement.lux b/stdlib/source/library/lux/meta/type/refinement.lux
index 225edc957..24e0aa2e2 100644
--- a/stdlib/source/library/lux/type/refinement.lux
+++ b/stdlib/source/library/lux/meta/type/refinement.lux
@@ -7,9 +7,9 @@
["[0]" macro (.only)
[syntax (.only syntax)]
["[0]" code
- ["<[1]>" \\parser]]]
- ["[0]" type (.only)
- [primitive (.except)]]]])
+ ["<[1]>" \\parser]]]]]
+ ["[0]" // (.only)
+ [primitive (.except)]])
(primitive .public (Refined t %)
(Record
@@ -98,7 +98,7 @@
(~ g!_)
(.undefined))))
- ... (` ((~! type.by_example) [(~ g!t) (~ g!%)]
+ ... (` ((~! //.by_example) [(~ g!t) (~ g!%)]
... (is (..Refiner (~ g!t) (~ g!%))
... (~ refiner))
... (..Refined (~ g!t) (~ g!%))))
diff --git a/stdlib/source/library/lux/type/resource.lux b/stdlib/source/library/lux/meta/type/resource.lux
index 760f07dc2..bd9e71c08 100644
--- a/stdlib/source/library/lux/type/resource.lux
+++ b/stdlib/source/library/lux/meta/type/resource.lux
@@ -22,9 +22,9 @@
["<[1]>" \\parser (.only Parser)]]]
[math
[number
- ["n" nat]]]
- [type
- [primitive (.except)]]]])
+ ["n" nat]]]]]
+ [//
+ [primitive (.except)]])
(type .public (Procedure monad input output value)
(-> input (monad [output value])))
diff --git a/stdlib/source/library/lux/type/unit.lux b/stdlib/source/library/lux/meta/type/unit.lux
index 994e7ad11..994e7ad11 100644
--- a/stdlib/source/library/lux/type/unit.lux
+++ b/stdlib/source/library/lux/meta/type/unit.lux
diff --git a/stdlib/source/library/lux/type/unit/scale.lux b/stdlib/source/library/lux/meta/type/unit/scale.lux
index b7f598d13..b7f598d13 100644
--- a/stdlib/source/library/lux/type/unit/scale.lux
+++ b/stdlib/source/library/lux/meta/type/unit/scale.lux
diff --git a/stdlib/source/library/lux/type/variance.lux b/stdlib/source/library/lux/meta/type/variance.lux
index ac7e120d4..ac7e120d4 100644
--- a/stdlib/source/library/lux/type/variance.lux
+++ b/stdlib/source/library/lux/meta/type/variance.lux
diff --git a/stdlib/source/library/lux/target/common_lisp.lux b/stdlib/source/library/lux/target/common_lisp.lux
index 7f93025a2..06fca5f8c 100644
--- a/stdlib/source/library/lux/target/common_lisp.lux
+++ b/stdlib/source/library/lux/target/common_lisp.lux
@@ -13,8 +13,9 @@
[math
[number
["f" frac]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(def as_form
(-> Text Text)
diff --git a/stdlib/source/library/lux/target/js.lux b/stdlib/source/library/lux/target/js.lux
index 8665f2ce4..0c275562d 100644
--- a/stdlib/source/library/lux/target/js.lux
+++ b/stdlib/source/library/lux/target/js.lux
@@ -14,8 +14,9 @@
[number
["i" int]
["f" frac]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(def expression
(text.enclosed ["(" ")"]))
diff --git a/stdlib/source/library/lux/target/jvm/bytecode/address.lux b/stdlib/source/library/lux/target/jvm/bytecode/address.lux
index f1b07aa77..66b50f65a 100644
--- a/stdlib/source/library/lux/target/jvm/bytecode/address.lux
+++ b/stdlib/source/library/lux/target/jvm/bytecode/address.lux
@@ -14,8 +14,9 @@
[math
[number
["n" nat]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
[jump (.only Big_Jump)]
["/[1]" //
diff --git a/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/registry.lux b/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/registry.lux
index f1cc6058d..3f16fa4a2 100644
--- a/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/registry.lux
+++ b/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/registry.lux
@@ -13,8 +13,9 @@
[math
[number
["n" nat]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" /////
[encoding
["[1][0]" unsigned (.only U1 U2)]]
diff --git a/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/stack.lux b/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/stack.lux
index daf9da304..7c7e0472e 100644
--- a/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/stack.lux
+++ b/stdlib/source/library/lux/target/jvm/bytecode/environment/limit/stack.lux
@@ -11,8 +11,9 @@
["%" \\format]]
[binary
[\\format (.only Format)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" /////
[encoding
["[1][0]" unsigned (.only U2)]]])
diff --git a/stdlib/source/library/lux/target/jvm/bytecode/instruction.lux b/stdlib/source/library/lux/target/jvm/bytecode/instruction.lux
index 1c654dae9..3b613b206 100644
--- a/stdlib/source/library/lux/target/jvm/bytecode/instruction.lux
+++ b/stdlib/source/library/lux/target/jvm/bytecode/instruction.lux
@@ -21,8 +21,9 @@
[math
[number (.only hex)
["n" nat]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
["[1][0]" address (.only Address)]
["[1][0]" jump (.only Jump Big_Jump)]
diff --git a/stdlib/source/library/lux/target/jvm/constant.lux b/stdlib/source/library/lux/target/jvm/constant.lux
index 516930b9d..ae57d805f 100644
--- a/stdlib/source/library/lux/target/jvm/constant.lux
+++ b/stdlib/source/library/lux/target/jvm/constant.lux
@@ -21,8 +21,9 @@
["[0]" i64]
["[0]" int]
["[0]" frac]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" /
["[1][0]" tag]
["/[1]" //
diff --git a/stdlib/source/library/lux/target/jvm/constant/tag.lux b/stdlib/source/library/lux/target/jvm/constant/tag.lux
index 2b12af966..bcd1d4209 100644
--- a/stdlib/source/library/lux/target/jvm/constant/tag.lux
+++ b/stdlib/source/library/lux/target/jvm/constant/tag.lux
@@ -8,8 +8,9 @@
[data
[binary
[\\format (.only Format)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" ///
[encoding
["[1][0]" unsigned (.only U1) (.use "u1//[0]" equivalence)]]])
diff --git a/stdlib/source/library/lux/target/jvm/encoding/name.lux b/stdlib/source/library/lux/target/jvm/encoding/name.lux
index 246bb0575..7516cdc46 100644
--- a/stdlib/source/library/lux/target/jvm/encoding/name.lux
+++ b/stdlib/source/library/lux/target/jvm/encoding/name.lux
@@ -4,8 +4,9 @@
[data
["[0]" text (.only)
["%" \\format (.only format)]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(def .public internal_separator "/")
(def .public external_separator ".")
diff --git a/stdlib/source/library/lux/target/jvm/encoding/signed.lux b/stdlib/source/library/lux/target/jvm/encoding/signed.lux
index 30ec9a567..ba6304a39 100644
--- a/stdlib/source/library/lux/target/jvm/encoding/signed.lux
+++ b/stdlib/source/library/lux/target/jvm/encoding/signed.lux
@@ -19,8 +19,9 @@
["[0]" i64]
["n" nat]
["i" int]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive .public (Signed brand)
Int
diff --git a/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux b/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux
index eee130b27..bbc331384 100644
--- a/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux
+++ b/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux
@@ -18,8 +18,9 @@
[number
["n" nat]
["[0]" i64]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive .public (Unsigned brand)
Nat
diff --git a/stdlib/source/library/lux/target/jvm/index.lux b/stdlib/source/library/lux/target/jvm/index.lux
index 1bae3b814..05489792b 100644
--- a/stdlib/source/library/lux/target/jvm/index.lux
+++ b/stdlib/source/library/lux/target/jvm/index.lux
@@ -6,8 +6,9 @@
[data
[binary
[\\format (.only Format)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
[encoding
["[1][0]" unsigned (.only U2)]]])
diff --git a/stdlib/source/library/lux/target/jvm/modifier.lux b/stdlib/source/library/lux/target/jvm/modifier.lux
index 05df8f292..9d135aa55 100644
--- a/stdlib/source/library/lux/target/jvm/modifier.lux
+++ b/stdlib/source/library/lux/target/jvm/modifier.lux
@@ -17,8 +17,9 @@
[math
["[0]" number (.only hex)
["[0]" i64]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
[encoding
["[1][0]" unsigned]]])
diff --git a/stdlib/source/library/lux/target/jvm/modifier/inner.lux b/stdlib/source/library/lux/target/jvm/modifier/inner.lux
index 1537dbe10..c61569575 100644
--- a/stdlib/source/library/lux/target/jvm/modifier/inner.lux
+++ b/stdlib/source/library/lux/target/jvm/modifier/inner.lux
@@ -1,8 +1,9 @@
(.require
[library
[lux (.except static)
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
[// (.only modifiers)])
(primitive .public Inner Any)
diff --git a/stdlib/source/library/lux/target/jvm/type.lux b/stdlib/source/library/lux/target/jvm/type.lux
index 3bb1f6411..9b90e6c28 100644
--- a/stdlib/source/library/lux/target/jvm/type.lux
+++ b/stdlib/source/library/lux/target/jvm/type.lux
@@ -14,8 +14,9 @@
[math
[number
["n" nat]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
[encoding
["[1][0]" name (.only External)]]]
diff --git a/stdlib/source/library/lux/target/jvm/type/category.lux b/stdlib/source/library/lux/target/jvm/type/category.lux
index 62a0a3a45..bbef2f241 100644
--- a/stdlib/source/library/lux/target/jvm/type/category.lux
+++ b/stdlib/source/library/lux/target/jvm/type/category.lux
@@ -3,8 +3,9 @@
[lux (.except Primitive)
[macro
["[0]" template]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive Void' Any)
(primitive .public (Value' kind) Any)
diff --git a/stdlib/source/library/lux/target/jvm/type/descriptor.lux b/stdlib/source/library/lux/target/jvm/type/descriptor.lux
index 332a1c128..a3635d767 100644
--- a/stdlib/source/library/lux/target/jvm/type/descriptor.lux
+++ b/stdlib/source/library/lux/target/jvm/type/descriptor.lux
@@ -13,8 +13,9 @@
[math
[number
["n" nat]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
[category (.only Void Value Return Method Primitive Object Class Array Var Parameter Declaration)]
["/[1]" //
diff --git a/stdlib/source/library/lux/target/jvm/type/lux.lux b/stdlib/source/library/lux/target/jvm/type/lux.lux
index 6f2ab6b47..724092721 100644
--- a/stdlib/source/library/lux/target/jvm/type/lux.lux
+++ b/stdlib/source/library/lux/target/jvm/type/lux.lux
@@ -15,9 +15,10 @@
[collection
["[0]" array]
["[0]" dictionary (.only Dictionary)]]]
- [type
- [":" primitive]
- ["[0]" check (.only Check) (.use "[1]#[0]" monad)]]]]
+ [meta
+ [type
+ [":" primitive]
+ ["[0]" check (.only Check) (.use "[1]#[0]" monad)]]]]]
["[0]" // (.only)
[category (.only Void Value Return Method Primitive Object Class Array Var Parameter)]
["[1][0]" descriptor]
diff --git a/stdlib/source/library/lux/target/jvm/type/reflection.lux b/stdlib/source/library/lux/target/jvm/type/reflection.lux
index cac395b22..de151b35d 100644
--- a/stdlib/source/library/lux/target/jvm/type/reflection.lux
+++ b/stdlib/source/library/lux/target/jvm/type/reflection.lux
@@ -6,8 +6,9 @@
[data
["[0]" text (.use "[1]#[0]" equivalence)
["%" \\format (.only format)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
[category (.only Void Value Return Method Primitive Object Class Array Var Parameter Declaration)]
["[1][0]" descriptor]
diff --git a/stdlib/source/library/lux/target/jvm/type/signature.lux b/stdlib/source/library/lux/target/jvm/type/signature.lux
index cbde0203a..6afc33607 100644
--- a/stdlib/source/library/lux/target/jvm/type/signature.lux
+++ b/stdlib/source/library/lux/target/jvm/type/signature.lux
@@ -11,8 +11,9 @@
["%" \\format (.only format)]]
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
[category (.only Void Value Return Method Primitive Object Class Array Var Parameter Declaration Inheritance)]
["[1][0]" descriptor]
diff --git a/stdlib/source/library/lux/target/lua.lux b/stdlib/source/library/lux/target/lua.lux
index f12cfbac6..8f8a3ed42 100644
--- a/stdlib/source/library/lux/target/lua.lux
+++ b/stdlib/source/library/lux/target/lua.lux
@@ -23,8 +23,9 @@
["n" nat]
["i" int]
["f" frac]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
... Added the carriage return for better Windows compatibility.
(def \n+
diff --git a/stdlib/source/library/lux/target/php.lux b/stdlib/source/library/lux/target/php.lux
index 2ad1863b6..2e11466f9 100644
--- a/stdlib/source/library/lux/target/php.lux
+++ b/stdlib/source/library/lux/target/php.lux
@@ -22,8 +22,9 @@
[number
["n" nat]
["f" frac]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(def input_separator ", ")
(def statement_suffix ";")
diff --git a/stdlib/source/library/lux/target/python.lux b/stdlib/source/library/lux/target/python.lux
index ddc601161..3237a638c 100644
--- a/stdlib/source/library/lux/target/python.lux
+++ b/stdlib/source/library/lux/target/python.lux
@@ -23,8 +23,9 @@
[number
["n" nat]
["f" frac]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(.def input_separator
", ")
diff --git a/stdlib/source/library/lux/target/r.lux b/stdlib/source/library/lux/target/r.lux
index 6d56eea58..4c6d87403 100644
--- a/stdlib/source/library/lux/target/r.lux
+++ b/stdlib/source/library/lux/target/r.lux
@@ -18,8 +18,9 @@
[math
[number
["f" frac]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(primitive .public (Code kind)
Text
diff --git a/stdlib/source/library/lux/target/ruby.lux b/stdlib/source/library/lux/target/ruby.lux
index 5a5f5af9d..b2dee4ea6 100644
--- a/stdlib/source/library/lux/target/ruby.lux
+++ b/stdlib/source/library/lux/target/ruby.lux
@@ -22,8 +22,9 @@
[number
["n" nat]
["f" frac]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(def input_separator ", ")
(def statement_suffix ";")
diff --git a/stdlib/source/library/lux/target/scheme.lux b/stdlib/source/library/lux/target/scheme.lux
index 0a2d66b7d..4173b4241 100644
--- a/stdlib/source/library/lux/target/scheme.lux
+++ b/stdlib/source/library/lux/target/scheme.lux
@@ -18,8 +18,9 @@
[number
["n" nat]
["f" frac]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
... Added the carriage return for better Windows compatibility.
(def \n+
diff --git a/stdlib/source/library/lux/time.lux b/stdlib/source/library/lux/time.lux
index 3f57e5889..e020c4069 100644
--- a/stdlib/source/library/lux/time.lux
+++ b/stdlib/source/library/lux/time.lux
@@ -18,8 +18,9 @@
[math
[number
["n" nat (.use "[1]#[0]" decimal)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
[/
["[0]" duration (.only Duration)]])
diff --git a/stdlib/source/library/lux/time/date.lux b/stdlib/source/library/lux/time/date.lux
index 78bd79237..8140b076b 100644
--- a/stdlib/source/library/lux/time/date.lux
+++ b/stdlib/source/library/lux/time/date.lux
@@ -22,8 +22,9 @@
[number
["n" nat (.use "[1]#[0]" decimal)]
["i" int]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
["[1][0]" year (.only Year)]
["[1][0]" month (.only Month)]])
diff --git a/stdlib/source/library/lux/time/duration.lux b/stdlib/source/library/lux/time/duration.lux
index b8ed4f776..00a7c1d1e 100644
--- a/stdlib/source/library/lux/time/duration.lux
+++ b/stdlib/source/library/lux/time/duration.lux
@@ -18,8 +18,9 @@
[number
["i" int]
["[0]" nat (.use "[1]#[0]" decimal)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
["[1][0]" year]])
diff --git a/stdlib/source/library/lux/time/instant.lux b/stdlib/source/library/lux/time/instant.lux
index a453d5f58..2b58b5bf2 100644
--- a/stdlib/source/library/lux/time/instant.lux
+++ b/stdlib/source/library/lux/time/instant.lux
@@ -20,8 +20,9 @@
[number
["i" int]
["f" frac]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" // (.only Time)
["[0]" duration (.only Duration)]
["[0]" year (.only Year)]
diff --git a/stdlib/source/library/lux/time/year.lux b/stdlib/source/library/lux/time/year.lux
index 494f3355b..02062e6aa 100644
--- a/stdlib/source/library/lux/time/year.lux
+++ b/stdlib/source/library/lux/time/year.lux
@@ -17,8 +17,9 @@
[number
["n" nat (.use "[1]#[0]" decimal)]
["i" int (.use "[1]#[0]" decimal)]]]
- [type
- [primitive (.except)]]]])
+ [meta
+ [type
+ [primitive (.except)]]]]])
(def (internal year)
(-> Int Int)
diff --git a/stdlib/source/library/lux/tool/compiler/default/platform.lux b/stdlib/source/library/lux/tool/compiler/default/platform.lux
index 492644edc..af29859b7 100644
--- a/stdlib/source/library/lux/tool/compiler/default/platform.lux
+++ b/stdlib/source/library/lux/tool/compiler/default/platform.lux
@@ -27,9 +27,9 @@
["[0]" set (.only Set)]
["[0]" list (.use "[1]#[0]" monoid functor mix)]]]
["[0]" meta (.only)
- ["[0]" configuration (.only Configuration)]]
- [type (.only sharing)
- ["[0]" check]]
+ ["[0]" configuration (.only Configuration)]
+ [type (.only sharing)
+ ["[0]" check]]]
[world
["[0]" file (.only Path)]
["[0]" console]]]]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/evaluation.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/evaluation.lux
index d25341b39..402cf563a 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/evaluation.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/evaluation.lux
@@ -1,8 +1,6 @@
(.require
[library
[lux (.except)
- [type (.only sharing)]
- ["[0]" meta]
[abstract
[monad (.only do)]]
[control
@@ -16,7 +14,9 @@
["[0]" dictionary (.only Dictionary)]]]
[math
[number
- ["n" nat]]]]]
+ ["n" nat]]]
+ ["[0]" meta (.only)
+ [type (.only sharing)]]]]
["[0]" // (.only Operation)
[macro (.only Expander)]
["[1][0]" type]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/inference.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/inference.lux
index da4761411..e13058163 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/inference.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/inference.lux
@@ -20,8 +20,9 @@
[math
[number
["n" nat]]]
- ["[0]" type (.only)
- ["[0]" check]]]]
+ [meta
+ ["[0]" type (.only)
+ ["[0]" check]]]]]
["/" // (.only Analysis Operation Phase)
["[1][0]" type]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/type.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/type.lux
index 182199934..6cfad0d9f 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/type.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/type.lux
@@ -17,8 +17,9 @@
[math
[number
["n" nat]]]
- [type
- ["[0]" check (.only Check)]]]]
+ [meta
+ [type
+ ["[0]" check (.only Check)]]]]]
["/" // (.only Operation)
[//
[phase
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/case.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/case.lux
index ba5d13ca3..6f3c13d65 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/case.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/case.lux
@@ -1,7 +1,6 @@
(.require
[library
[lux (.except case)
- ["[0]" meta]
[abstract
["[0]" monad (.only do)]]
[control
@@ -20,8 +19,9 @@
[macro
["^" pattern]
["[0]" code]]
- ["[0]" type (.only)
- ["[0]" check (.only Check)]]]]
+ ["[0]" meta (.only)
+ ["[0]" type (.only)
+ ["[0]" check (.only Check)]]]]]
["[0]" /
["/[1]" //
["[1][0]" complex]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/complex.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/complex.lux
index 3293fb170..c355ad0d1 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/complex.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/complex.lux
@@ -1,7 +1,6 @@
(.require
[library
[lux (.except)
- ["[0]" meta]
[abstract
["[0]" monad (.only do)]]
[control
@@ -21,10 +20,10 @@
[math
[number
["n" nat]]]
- [meta
- ["[0]" symbol]]
- ["[0]" type (.only)
- ["[0]" check]]]]
+ ["[0]" meta (.only)
+ ["[0]" symbol]
+ ["[0]" type (.only)
+ ["[0]" check]]]]]
["[0]" //
["[1][0]" simple]
["/[1]" //
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/function.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/function.lux
index 4354f10a1..68d8ed9e4 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/function.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/function.lux
@@ -1,7 +1,6 @@
(.require
[library
[lux (.except function)
- ["[0]" meta]
[abstract
[monad (.only do)]]
[control
@@ -17,8 +16,9 @@
[math
[number
["n" nat]]]
- ["[0]" type (.only)
- ["[0]" check]]]]
+ ["[0]" meta (.only)
+ ["[0]" type (.only)
+ ["[0]" check]]]]]
["[0]" ///
["[1][0]" extension]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux
index 102e5adcf..580faf086 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux
@@ -14,8 +14,9 @@
[macro
["[0]" code
["<[1]>" \\parser (.only Parser)]]]
- ["[0]" type (.only)
- ["[0]" check]]
+ [meta
+ ["[0]" type (.only)
+ ["[0]" check]]]
["@" target (.only)
["_" js]]]]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux
index d22d74aaf..cad6fe27b 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux
@@ -2,7 +2,6 @@
[library
[lux (.except Type Module Primitive char int type)
["[0]" ffi (.only import)]
- ["[0]" meta]
[abstract
["[0]" monad (.only do)]]
[control
@@ -57,8 +56,9 @@
["[0]" parser]
["[0]" alias (.only Aliasing)]
["[0]T" lux (.only Mapping)]]]]
- ["[0]" type (.only)
- ["[0]" check (.only Check) (.use "[1]#[0]" monad)]]]]
+ ["[0]" meta (.only)
+ ["[0]" type (.only)
+ ["[0]" check (.only Check) (.use "[1]#[0]" monad)]]]]]
["[0]" //
["[1][0]" lux (.only custom)]
["/[1]" // (.only)
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux
index 3c0e4cc86..d62efd51f 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux
@@ -14,8 +14,9 @@
[macro
["[0]" code
["<[1]>" \\parser (.only Parser)]]]
- ["[0]" type (.only)
- ["[0]" check]]
+ [meta
+ ["[0]" type (.only)
+ ["[0]" check]]]
["@" target (.only)
["_" lua]]]]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux
index 75e4e8516..37ba8abe9 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux
@@ -21,8 +21,9 @@
[math
[number
["n" nat]]]
- [type
- ["[0]" check]]
+ [meta
+ [type
+ ["[0]" check]]]
["[0]" meta]]]
["[0]" /// (.only)
["[1][0]" bundle]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux
index 3852d2b24..3417bf78a 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux
@@ -14,8 +14,9 @@
[macro
["[0]" code
["<[1]>" \\parser (.only Parser)]]]
- ["[0]" type (.only)
- ["[0]" check]]
+ [meta
+ ["[0]" type (.only)
+ ["[0]" check]]]
["@" target (.only)
["_" php]]]]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux
index 3c6e4b452..0712fe644 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux
@@ -14,8 +14,9 @@
[macro
["[0]" code
["<[1]>" \\parser (.only Parser)]]]
- ["[0]" type (.only)
- ["[0]" check]]
+ [meta
+ ["[0]" type (.only)
+ ["[0]" check]]]
["@" target (.only)
["_" python]]]]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/r.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/r.lux
index a53133555..67f44e35a 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/r.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/r.lux
@@ -14,8 +14,9 @@
[macro
["[0]" code
["<[1]>" \\parser (.only Parser)]]]
- ["[0]" type (.only)
- ["[0]" check]]
+ [meta
+ ["[0]" type (.only)
+ ["[0]" check]]]
["@" target
["_" r]]]]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux
index 3029aec9d..965f580b1 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux
@@ -14,8 +14,9 @@
[macro
["[0]" code
["<[1]>" \\parser (.only Parser)]]]
- ["[0]" type (.only)
- ["[0]" check]]
+ [meta
+ ["[0]" type (.only)
+ ["[0]" check]]]
["@" target (.only)
["_" ruby]]]]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux
index bf1493940..5768379ce 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux
@@ -14,8 +14,9 @@
[macro
["[0]" code
["<[1]>" \\parser (.only Parser)]]]
- ["[0]" type (.only)
- ["[0]" check]]
+ [meta
+ ["[0]" type (.only)
+ ["[0]" check]]]
["@" target (.only)
["_" scheme]]]]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive.lux b/stdlib/source/library/lux/tool/compiler/meta/archive.lux
index fd8a0c817..75612d11a 100644
--- a/stdlib/source/library/lux/tool/compiler/meta/archive.lux
+++ b/stdlib/source/library/lux/tool/compiler/meta/archive.lux
@@ -25,8 +25,9 @@
[math
[number
["n" nat (.use "[1]#[0]" equivalence)]]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
[/
["[0]" artifact]
["[0]" registry (.only Registry)]
diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/key.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/key.lux
index 0e26e7718..24db1094f 100644
--- a/stdlib/source/library/lux/tool/compiler/meta/archive/key.lux
+++ b/stdlib/source/library/lux/tool/compiler/meta/archive/key.lux
@@ -1,8 +1,9 @@
(.require
[library
[lux (.except)
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
[//
[signature (.only Signature)]])
diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/module/document.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/module/document.lux
index 64fae1ab4..46f7e2d5e 100644
--- a/stdlib/source/library/lux/tool/compiler/meta/archive/module/document.lux
+++ b/stdlib/source/library/lux/tool/compiler/meta/archive/module/document.lux
@@ -13,8 +13,9 @@
["[0]" binary
[\\parser (.only Parser)]
["[1]" \\format (.only Format)]]]
- [type (.only sharing)
- [primitive (.except)]]]]
+ [meta
+ [type (.only sharing)
+ [primitive (.except)]]]]]
[///
["[0]" signature (.only Signature) (.use "[1]#[0]" equivalence)]
["[0]" key (.only Key)]])
diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/registry.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/registry.lux
index ec61e4b79..b7c1e2e35 100644
--- a/stdlib/source/library/lux/tool/compiler/meta/archive/registry.lux
+++ b/stdlib/source/library/lux/tool/compiler/meta/archive/registry.lux
@@ -22,8 +22,9 @@
["[0]" dictionary (.only Dictionary)]]]
[macro
["^" pattern]]
- [type
- [primitive (.except)]]]]
+ [meta
+ [type
+ [primitive (.except)]]]]]
["[0]" //
["[0]" unit]
["[1]" artifact (.only Artifact ID)
diff --git a/stdlib/source/library/lux/world/file/watch.lux b/stdlib/source/library/lux/world/file/watch.lux
index d21036caa..aee589f28 100644
--- a/stdlib/source/library/lux/world/file/watch.lux
+++ b/stdlib/source/library/lux/world/file/watch.lux
@@ -1,6 +1,6 @@
(.require
[library
- [lux (.except all)
+ [lux (.except all and)
["@" target]
["[0]" ffi (.only import)]
[abstract
@@ -29,8 +29,9 @@
["n" nat]]]
[time
["[0]" instant (.only Instant) (.use "[1]#[0]" equivalence)]]
- [type
- [primitive (.only primitive representation abstraction)]]]]
+ [meta
+ [type
+ [primitive (.only primitive representation abstraction)]]]]]
["[0]" //])
(primitive .public Concern
@@ -66,7 +67,7 @@
false false true]
)
- (def .public (also left right)
+ (def .public (and left right)
(-> Concern Concern Concern)
(abstraction
[#creation (or (..creation? left) (..creation? right))
@@ -75,7 +76,7 @@
(def .public all
Concern
- (.all ..also
+ (.all ..and
..creation
..modification
..deletion
@@ -339,7 +340,7 @@
(|>> java/nio/file/WatchKey::pollEvents
(at io.monad each (|>> ..default_list
(list#each default_event_concern)
- (list#mix ..also ..none)))))
+ (list#mix ..and ..none)))))
(import java/nio/file/WatchService
"[1]::[0]"
@@ -441,8 +442,8 @@
(do async.monad
[?concern (stop path)]
(do (try.with async.monad)
- [key (..default_start (..watch_events (..also (try.else ..none ?concern)
- the_concern))
+ [key (..default_start (..watch_events (..and (try.else ..none ?concern)
+ the_concern))
watcher
path)]
(do async.monad