aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--stdlib/source/library/lux/abstract/monad/indexed.lux6
-rw-r--r--stdlib/source/library/lux/control/concatenative.lux8
-rw-r--r--stdlib/source/library/lux/control/continuation.lux7
-rw-r--r--stdlib/source/library/lux/control/exception.lux8
-rw-r--r--stdlib/source/library/lux/control/function/contract.lux7
-rw-r--r--stdlib/source/library/lux/control/function/inline.lux6
-rw-r--r--stdlib/source/library/lux/control/function/mutual.lux8
-rw-r--r--stdlib/source/library/lux/control/io.lux7
-rw-r--r--stdlib/source/library/lux/control/lazy.lux6
-rw-r--r--stdlib/source/library/lux/control/pipe.lux8
-rw-r--r--stdlib/source/library/lux/control/remember.lux22
-rw-r--r--stdlib/source/library/lux/control/security/capability.lux8
-rw-r--r--stdlib/source/library/lux/data/collection/sequence.lux8
-rw-r--r--stdlib/source/library/lux/data/collection/stream.lux6
-rw-r--r--stdlib/source/library/lux/data/collection/tree.lux6
-rw-r--r--stdlib/source/library/lux/data/format/css/value.lux7
-rw-r--r--stdlib/source/library/lux/data/format/json.lux8
-rw-r--r--stdlib/source/library/lux/data/text/escape.lux8
-rw-r--r--stdlib/source/library/lux/data/text/regex.lux8
-rw-r--r--stdlib/source/library/lux/debug.lux14
-rw-r--r--stdlib/source/library/lux/documentation.lux10
-rw-r--r--stdlib/source/library/lux/extension.lux6
-rw-r--r--stdlib/source/library/lux/ffi.jvm.lux10
-rw-r--r--stdlib/source/library/lux/ffi.lux108
-rw-r--r--stdlib/source/library/lux/ffi.old.lux12
-rw-r--r--stdlib/source/library/lux/ffi.php.lux16
-rw-r--r--stdlib/source/library/lux/ffi.scm.lux12
-rw-r--r--stdlib/source/library/lux/ffi/export.js.lux6
-rw-r--r--stdlib/source/library/lux/ffi/export.jvm.lux6
-rw-r--r--stdlib/source/library/lux/ffi/export.lua.lux6
-rw-r--r--stdlib/source/library/lux/ffi/export.py.lux6
-rw-r--r--stdlib/source/library/lux/ffi/export.rb.lux6
-rw-r--r--stdlib/source/library/lux/macro/context.lux8
-rw-r--r--stdlib/source/library/lux/macro/local.lux10
-rw-r--r--stdlib/source/library/lux/macro/syntax.lux8
-rw-r--r--stdlib/source/library/lux/macro/syntax/check.lux6
-rw-r--r--stdlib/source/library/lux/macro/syntax/declaration.lux6
-rw-r--r--stdlib/source/library/lux/macro/syntax/definition.lux8
-rw-r--r--stdlib/source/library/lux/macro/syntax/export.lux7
-rw-r--r--stdlib/source/library/lux/macro/syntax/input.lux6
-rw-r--r--stdlib/source/library/lux/macro/syntax/type/variable.lux6
-rw-r--r--stdlib/source/library/lux/macro/template.lux10
-rw-r--r--stdlib/source/library/lux/math.lux9
-rw-r--r--stdlib/source/library/lux/math/infix.lux6
-rw-r--r--stdlib/source/library/lux/math/modular.lux8
-rw-r--r--stdlib/source/library/lux/math/modulus.lux7
-rw-r--r--stdlib/source/library/lux/math/number/complex.lux9
-rw-r--r--stdlib/source/library/lux/math/number/ratio.lux8
-rw-r--r--stdlib/source/library/lux/meta/configuration.lux8
-rw-r--r--stdlib/source/library/lux/meta/version.lux8
-rw-r--r--stdlib/source/library/lux/program.lux4
-rw-r--r--stdlib/source/library/lux/static.lux6
-rw-r--r--stdlib/source/library/lux/target/jvm/modifier.lux8
-rw-r--r--stdlib/source/library/lux/target/lua.lux7
-rw-r--r--stdlib/source/library/lux/target/php.lux7
-rw-r--r--stdlib/source/library/lux/target/python.lux7
-rw-r--r--stdlib/source/library/lux/target/r.lux7
-rw-r--r--stdlib/source/library/lux/target/ruby.lux7
-rw-r--r--stdlib/source/library/lux/test.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/analysis.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/common_lisp.lux32
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux9
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux9
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux28
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/r.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux20
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux9
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/runtime.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/extension.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/js/runtime.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/lua/runtime.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/runtime.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/python/runtime.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/runtime.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/ruby/runtime.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/extension/common.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/runtime.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/syntax.lux9
-rw-r--r--stdlib/source/library/lux/type.lux8
-rw-r--r--stdlib/source/library/lux/type/dynamic.lux8
-rw-r--r--stdlib/source/library/lux/type/implicit.lux10
-rw-r--r--stdlib/source/library/lux/type/poly.lux14
-rw-r--r--stdlib/source/library/lux/type/primitive.lux6
-rw-r--r--stdlib/source/library/lux/type/quotient.lux7
-rw-r--r--stdlib/source/library/lux/type/refinement.lux7
-rw-r--r--stdlib/source/library/lux/type/resource.lux9
-rw-r--r--stdlib/source/library/lux/type/unit.lux7
-rw-r--r--stdlib/source/library/lux/type/unit/scale.lux8
-rw-r--r--stdlib/source/library/lux/world/net/http/client.lux9
-rw-r--r--stdlib/source/parser/lux/macro/code.lux (renamed from stdlib/source/library/lux/control/parser/code.lux)4
-rw-r--r--stdlib/source/parser/lux/type.lux (renamed from stdlib/source/library/lux/control/parser/type.lux)4
96 files changed, 447 insertions, 465 deletions
diff --git a/stdlib/source/library/lux/abstract/monad/indexed.lux b/stdlib/source/library/lux/abstract/monad/indexed.lux
index ae8ad03db..8d03d011e 100644
--- a/stdlib/source/library/lux/abstract/monad/indexed.lux
+++ b/stdlib/source/library/lux/abstract/monad/indexed.lux
@@ -2,14 +2,14 @@
[library
[lux (.except global)
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" list (.use "[1]#[0]" functor mix)]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]]
["[0]" //])
(type .public (IxMonad m)
diff --git a/stdlib/source/library/lux/control/concatenative.lux b/stdlib/source/library/lux/control/concatenative.lux
index b0768b43e..4e900a860 100644
--- a/stdlib/source/library/lux/control/concatenative.lux
+++ b/stdlib/source/library/lux/control/concatenative.lux
@@ -15,8 +15,9 @@
["[0]" list (.use "[1]#[0]" mix functor)]]]
["[0]" macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]
- ["[0]" template]]
+ ["[0]" template]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]
@@ -24,8 +25,7 @@
["r" rev]
["f" frac]]]]]
[//
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]])
+ ["<>" parser (.use "[1]#[0]" monad)]])
(type Stack
(Record
diff --git a/stdlib/source/library/lux/control/continuation.lux b/stdlib/source/library/lux/control/continuation.lux
index 57f0053e9..a9e62ac66 100644
--- a/stdlib/source/library/lux/control/continuation.lux
+++ b/stdlib/source/library/lux/control/continuation.lux
@@ -6,12 +6,11 @@
[apply (.only Apply)]
[monad (.only Monad do)]]
[control
- ["[0]" function]
- [parser
- ["<[0]>" code]]]
+ ["[0]" function]]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]]]])
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]]])
(type .public (Cont i o)
(-> (-> i o) o))
diff --git a/stdlib/source/library/lux/control/exception.lux b/stdlib/source/library/lux/control/exception.lux
index 98e0c6f72..cf45dfe13 100644
--- a/stdlib/source/library/lux/control/exception.lux
+++ b/stdlib/source/library/lux/control/exception.lux
@@ -6,16 +6,16 @@
[abstract
[monad (.only do)]]
[control
- ["[0]" maybe]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser (.use "[1]#[0]" monad)]
+ ["[0]" maybe]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" monoid)]
[collection
["[0]" list (.use "[1]#[0]" functor mix)]]]
[macro
- ["[0]" code]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]
[syntax (.only syntax)
["|[0]|" input]
["[0]" type
diff --git a/stdlib/source/library/lux/control/function/contract.lux b/stdlib/source/library/lux/control/function/contract.lux
index 80e90f6ca..df8702fed 100644
--- a/stdlib/source/library/lux/control/function/contract.lux
+++ b/stdlib/source/library/lux/control/function/contract.lux
@@ -2,15 +2,14 @@
[library
[lux (.except)
[control
- ["[0]" exception (.only exception)]
- [parser
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[data
[text
["%" \\format (.only format)]]]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["i" int]]]]])
diff --git a/stdlib/source/library/lux/control/function/inline.lux b/stdlib/source/library/lux/control/function/inline.lux
index 10141088d..98d6e56c9 100644
--- a/stdlib/source/library/lux/control/function/inline.lux
+++ b/stdlib/source/library/lux/control/function/inline.lux
@@ -5,13 +5,13 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" list (.use "[1]#[0]" monad)]]]
["[0]" macro (.only)
- ["[0]" code]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]
[syntax (.only syntax)
["|[0]|" export]]]]])
diff --git a/stdlib/source/library/lux/control/function/mutual.lux b/stdlib/source/library/lux/control/function/mutual.lux
index 617efe7de..c6107b1a9 100644
--- a/stdlib/source/library/lux/control/function/mutual.lux
+++ b/stdlib/source/library/lux/control/function/mutual.lux
@@ -5,9 +5,8 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" try (.only Try)]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser (.use "[1]#[0]" monad)]
+ ["[0]" try (.only Try)]]
[data
["[0]" product]
[text
@@ -18,7 +17,8 @@
["[0]" plist (.only PList)]]]]
["[0]" macro (.only)
["[0]" local]
- ["[0]" code]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]
[syntax (.only syntax)
["[0]" declaration (.only Declaration)]]]]]
["[0]" //])
diff --git a/stdlib/source/library/lux/control/io.lux b/stdlib/source/library/lux/control/io.lux
index 5ae034638..609814844 100644
--- a/stdlib/source/library/lux/control/io.lux
+++ b/stdlib/source/library/lux/control/io.lux
@@ -5,14 +5,13 @@
[functor (.only Functor)]
[apply (.only Apply)]
[monad (.only Monad do)]]
- [control
- [parser
- ["<[0]>" code]]]
[type
[primitive (.except)]]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" template]]]])
+ ["[0]" template]
+ ["[0]" code
+ ["<[1]>" \\parser]]]]])
(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 95299e5f0..b20711ba7 100644
--- a/stdlib/source/library/lux/control/lazy.lux
+++ b/stdlib/source/library/lux/control/lazy.lux
@@ -8,12 +8,12 @@
[equivalence (.only Equivalence)]]
[control
["[0]" io]
- [parser
- ["<[0]>" code]]
[concurrency
["[0]" atom]]]
[macro (.only with_symbols)
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
[type (.only sharing)
[primitive (.except)]]]])
diff --git a/stdlib/source/library/lux/control/pipe.lux b/stdlib/source/library/lux/control/pipe.lux
index eff3b6dce..99e7a697c 100644
--- a/stdlib/source/library/lux/control/pipe.lux
+++ b/stdlib/source/library/lux/control/pipe.lux
@@ -4,16 +4,16 @@
[abstract
["[0]" monad]]
[control
- ["[0]" try]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]
+ ["[0]" try]]
[data
["[0]" identity]
[collection
["[0]" list (.use "[1]#[0]" monad)]]]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/control/remember.lux b/stdlib/source/library/lux/control/remember.lux
index 264d13adb..bce726fb1 100644
--- a/stdlib/source/library/lux/control/remember.lux
+++ b/stdlib/source/library/lux/control/remember.lux
@@ -4,11 +4,10 @@
[abstract
[monad (.only do)]]
[control
+ ["<>" parser (.use "[1]#[0]" functor)]
["[0]" io]
["[0]" try]
- ["[0]" exception (.only exception)]
- ["<>" parser (.use "[1]#[0]" functor)
- ["<c>" code (.only Parser)]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" text
["%" \\format (.only format)]]]
@@ -17,9 +16,10 @@
["[0]" date (.only Date) (.use "[1]#[0]" order)]]
["[0]" meta]
[macro
- ["[0]" code]
+ [syntax (.only syntax)]
["[0]" template]
- [syntax (.only syntax)]]]])
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]])
(exception .public (must_remember [deadline Date
today Date
@@ -40,9 +40,9 @@
(Parser Date)
(all <>.either
(<>#each (|>> instant.of_millis instant.date)
- <c>.int)
+ <code>.int)
(do <>.monad
- [raw <c>.text]
+ [raw <code>.text]
(case (at date.codec decoded raw)
{try.#Success date}
(in date)
@@ -52,8 +52,8 @@
(def .public remember
(syntax (_ [deadline ..deadline
- message <c>.text
- focus (<>.maybe <c>.any)])
+ message <code>.text
+ focus (<>.maybe <code>.any)])
(let [now (io.run! instant.now)
today (instant.date now)]
(if (date#< deadline today)
@@ -68,8 +68,8 @@
(with_template [<name> <message>]
[(`` (def .public <name>
(syntax (_ [deadline ..deadline
- message <c>.text
- focus (<>.maybe <c>.any)])
+ message <code>.text
+ focus (<>.maybe <code>.any)])
(in (list (` (..remember (~ (code.text (%.date deadline)))
(~ (code.text (format <message> " " message)))
(~+ (case focus
diff --git a/stdlib/source/library/lux/control/security/capability.lux b/stdlib/source/library/lux/control/security/capability.lux
index 0164bcc7b..96813f726 100644
--- a/stdlib/source/library/lux/control/security/capability.lux
+++ b/stdlib/source/library/lux/control/security/capability.lux
@@ -4,9 +4,8 @@
[abstract
[monad (.only do)]]
[control
+ ["<>" parser]
["[0]" io (.only IO)]
- ["<>" parser (.only)
- ["<c>" code]]
[concurrency
["[0]" async (.only Async)]]]
[data
@@ -18,7 +17,8 @@
[primitive (.except)]]
["[0]" meta]
["[0]" macro (.only)
- ["[0]" code]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]
[syntax (.only syntax)
["|[0]|" export]
["|[0]|" declaration]]]]])
@@ -44,7 +44,7 @@
(|export|.parser
(all <>.and
|declaration|.parser
- (<c>.form (all <>.and <c>.local <c>.any <c>.any))))])
+ (<code>.form (all <>.and <code>.local <code>.any <code>.any))))])
(macro.with_symbols [g!_]
(do [! meta.monad]
[this_module meta.current_module_name
diff --git a/stdlib/source/library/lux/data/collection/sequence.lux b/stdlib/source/library/lux/data/collection/sequence.lux
index 493b5d411..3d5dfd300 100644
--- a/stdlib/source/library/lux/data/collection/sequence.lux
+++ b/stdlib/source/library/lux/data/collection/sequence.lux
@@ -14,11 +14,10 @@
[mix (.only Mix)]
[predicate (.only Predicate)]]
[control
+ ["<>" parser]
["[0]" maybe (.use "[1]#[0]" functor)]
["[0]" try (.only Try)]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" product]
[collection
@@ -28,7 +27,8 @@
[macro
[syntax (.only syntax)]
["^" pattern]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/data/collection/stream.lux b/stdlib/source/library/lux/data/collection/stream.lux
index 42523d5e3..4e82cbe1e 100644
--- a/stdlib/source/library/lux/data/collection/stream.lux
+++ b/stdlib/source/library/lux/data/collection/stream.lux
@@ -6,15 +6,15 @@
[comonad (.only CoMonad)]]
[control
["//" continuation (.only Cont)]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
["[0]" bit]
[collection
["[0]" list (.use "[1]#[0]" monad)]]]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]]]]])
diff --git a/stdlib/source/library/lux/data/collection/tree.lux b/stdlib/source/library/lux/data/collection/tree.lux
index f05521c70..64288458d 100644
--- a/stdlib/source/library/lux/data/collection/tree.lux
+++ b/stdlib/source/library/lux/data/collection/tree.lux
@@ -7,14 +7,14 @@
[mix (.only Mix)]
[monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" list (.use "[1]#[0]" monad mix)]]]
[macro
[syntax (.only syntax)]
- ["[0]" code]]]])
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]])
(type .public (Tree a)
(Record
diff --git a/stdlib/source/library/lux/data/format/css/value.lux b/stdlib/source/library/lux/data/format/css/value.lux
index ac6af642c..6dab6619e 100644
--- a/stdlib/source/library/lux/data/format/css/value.lux
+++ b/stdlib/source/library/lux/data/format/css/value.lux
@@ -2,9 +2,7 @@
[library
[lux (.except Label All Location and static false true)
[control
- ["[0]" maybe]
- [parser
- ["<[0]>" code]]]
+ ["[0]" maybe]]
[data
["[0]" color]
["[0]" product]
@@ -15,7 +13,8 @@
[macro
[syntax (.only syntax)]
["[0]" template]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/data/format/json.lux b/stdlib/source/library/lux/data/format/json.lux
index 845a4e057..3f14a9599 100644
--- a/stdlib/source/library/lux/data/format/json.lux
+++ b/stdlib/source/library/lux/data/format/json.lux
@@ -8,11 +8,10 @@
[predicate (.only Predicate)]
["[0]" monad (.only do)]]
[control
+ ["<>" parser (.use "[1]#[0]" monad)]
["[0]" pipe]
["[0]" maybe]
- ["[0]" try (.only Try)]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code]]]
+ ["[0]" try (.only Try)]]
[data
["[0]" bit]
["[0]" product]
@@ -25,7 +24,8 @@
[macro
[syntax (.only syntax)]
["^" pattern]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/data/text/escape.lux b/stdlib/source/library/lux/data/text/escape.lux
index f8980caf1..aff108c29 100644
--- a/stdlib/source/library/lux/data/text/escape.lux
+++ b/stdlib/source/library/lux/data/text/escape.lux
@@ -5,18 +5,18 @@
[abstract
[monad (.only do)]]
[control
+ ["<>" parser]
["[0]" maybe]
["[0]" try (.only Try)]
- ["[0]" exception (.only exception)]
- ["<>" parser
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[math
[number (.only hex)
["n" nat]]]
[macro
[syntax (.only syntax)]
["^" pattern]
- ["[0]" code]]]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]]]
["[0]" // (.only Char)
["%" \\format (.only format)]])
diff --git a/stdlib/source/library/lux/data/text/regex.lux b/stdlib/source/library/lux/data/text/regex.lux
index 957c12bd7..c9a8a5d68 100644
--- a/stdlib/source/library/lux/data/text/regex.lux
+++ b/stdlib/source/library/lux/data/text/regex.lux
@@ -5,11 +5,10 @@
[abstract
[monad (.only do)]]
[control
+ ["<>" parser (.use "[1]#[0]" monad)]
["[0]" maybe]
["[0]" try]
- ["[0]" exception (.only exception)]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" product]
["[0]" text
@@ -19,7 +18,8 @@
[macro (.only with_symbols)
[syntax (.only syntax)]
["^" pattern]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)
["n" nat (.use "[1]#[0]" decimal)]]]]]
diff --git a/stdlib/source/library/lux/debug.lux b/stdlib/source/library/lux/debug.lux
index 3db55592d..fa9e36cff 100644
--- a/stdlib/source/library/lux/debug.lux
+++ b/stdlib/source/library/lux/debug.lux
@@ -2,19 +2,16 @@
[library
[lux (.except private)
["@" target]
- ["[0]" type]
["[0]" ffi (.only import)]
["[0]" meta]
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser]
["[0]" pipe]
["[0]" function]
["[0]" try (.only Try)]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" type (.only Parser)]
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" text (.only)
["%" \\format (.only Format)]]
@@ -29,7 +26,8 @@
["^" pattern]
["[0]" template]
["[0]" syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
[ratio (.only Ratio)]
@@ -40,7 +38,9 @@
[duration (.only Duration)]
[date (.only Date)]
[month (.only Month)]
- [day (.only Day)]]]])
+ [day (.only Day)]]
+ ["[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 26e87d50d..2fd1b2bdf 100644
--- a/stdlib/source/library/lux/documentation.lux
+++ b/stdlib/source/library/lux/documentation.lux
@@ -7,10 +7,9 @@
[monad (.only do)]
["[0]" enum]]
[control
+ ["<>" parser (.use "[1]#[0]" monad)]
["[0]" maybe (.use "[1]#[0]" functor)]
- ["[0]" exception (.only exception)]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" product]
["[0]" text (.only \n) (.use "[1]#[0]" order)
@@ -24,8 +23,9 @@
["[0]" macro (.only)
[syntax (.only syntax)]
["^" pattern]
- ["[0]" code]
- ["[0]" template]]
+ ["[0]" template]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]]]
diff --git a/stdlib/source/library/lux/extension.lux b/stdlib/source/library/lux/extension.lux
index 3d1b684f6..9c3946a30 100644
--- a/stdlib/source/library/lux/extension.lux
+++ b/stdlib/source/library/lux/extension.lux
@@ -4,15 +4,15 @@
[abstract
["[0]" monad]]
[control
- ["<>" parser (.use "[1]#[0]" monad)
- ["<c>" code (.only Parser)]]]
+ ["<>" parser (.use "[1]#[0]" monad)]]
[data
["[0]" product]
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<c>" \\parser (.only Parser)]]]
[tool
[compiler
["[0]" phase]
diff --git a/stdlib/source/library/lux/ffi.jvm.lux b/stdlib/source/library/lux/ffi.jvm.lux
index fddb85cb7..5768251a8 100644
--- a/stdlib/source/library/lux/ffi.jvm.lux
+++ b/stdlib/source/library/lux/ffi.jvm.lux
@@ -5,12 +5,11 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser (.use "[1]#[0]" monad)]
["[0]" io]
["[0]" maybe]
["[0]" try (.only Try)]
- ["[0]" exception (.only Exception exception)]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" exception (.only Exception exception)]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" equivalence)
@@ -23,9 +22,10 @@
[macro (.only with_symbols)
[syntax (.only syntax)]
["^" pattern]
- ["[0]" code]
["[0]" template]
- ["[0]" context]]
+ ["[0]" context]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser(.only Parser)]]]
[math
[number
["n" nat]]]
diff --git a/stdlib/source/library/lux/ffi.lux b/stdlib/source/library/lux/ffi.lux
index 097f91e77..103d2babd 100644
--- a/stdlib/source/library/lux/ffi.lux
+++ b/stdlib/source/library/lux/ffi.lux
@@ -5,11 +5,10 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser (.use "[1]#[0]" monad)]
["[0]" io]
["[0]" maybe (.use "[1]#[0]" functor)]
- ["[0]" try]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" try]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" equivalence)
@@ -18,8 +17,9 @@
["[0]" list (.use "[1]#[0]" monad mix)]]]
["[0]" macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]
- ["[0]" template]]
+ ["[0]" template]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
["@" target (.only)
["[0]" js]]
[type
@@ -378,8 +378,8 @@
parameters
(list#each ..output_type :parameters:))]
(` (.def ((~ g!it) (~+ (case g!parameters
- {.#End} (list g!it)
- _ (list#each (the #mandatory) g!parameters))))
+ {.#End} (list g!it)
+ _ (list#each (the #mandatory) g!parameters))))
(.All ((~ g!it) (~+ g!variables))
(-> (~+ :input:/*)
(~ (|> :output:
@@ -450,8 +450,8 @@
g!class (` ((~ (code.local (maybe.else class_name alias))) (~+ g!class_variables)))
:output: [#optional? false #mandatory g!class]]
(` (.def ((~ g!it) (~+ (case g!parameters
- {.#End} (list g!it)
- _ (list#each (the #mandatory) g!parameters))))
+ {.#End} (list g!it)
+ _ (list#each (the #mandatory) g!parameters))))
(.All ((~ g!it) (~+ g!class_variables) (~+ g!input_variables))
(.-> (~+ (list#each ..output_type :parameters:))
(~ (|> :output:
@@ -728,51 +728,51 @@
{try.#Failure (%.format "Invalid inputs for extension: " (%.text name))})))))]))
(analysis <undefined>
- [name phase archive state]
- <code>.end
- _
- {try.#Success [state (extension_analysis name (list))]})
+ [name phase archive state]
+ <code>.end
+ _
+ {try.#Success [state (extension_analysis name (list))]})
(generation <undefined>
- [name phase archive state]
- (list)
- {try.#Success [state js.undefined]})
+ [name phase archive state]
+ (list)
+ {try.#Success [state js.undefined]})
(def .public undefined
(template (undefined)
[(.is ..Undefined (<undefined>))]))
(analysis <undefined?>
- [name phase archive state]
- <code>.any
- it
- (do try.monad
- [[state it] (phase archive (` (.is .Any (~ it))) state)]
- (in [state (extension_analysis name (list it))])))
+ [name phase archive state]
+ <code>.any
+ it
+ (do try.monad
+ [[state it] (phase archive (` (.is .Any (~ it))) state)]
+ (in [state (extension_analysis name (list it))])))
(generation <undefined?>
- [name phase archive state]
- (list it)
- (do try.monad
- [[state it] (phase archive it state)]
- (in [state (js.= js.undefined it)])))
+ [name phase archive state]
+ (list it)
+ (do try.monad
+ [[state it] (phase archive it state)]
+ (in [state (js.= js.undefined it)])))
(def .public undefined?
(template (undefined? <it>)
[(.as .Bit (.is .Any (<undefined?> <it>)))]))
(analysis <object>
- [name phase archive state]
- (<>.some (<>.and <code>.text <code>.any))
- it
- (do [! try.monad]
- [[state output] (monad.mix ! (.function (_ [key value] [state output])
- (do !
- [[state value] (phase archive (` (.is .Any (~ value))) state)]
- (in [state (list.partial value (text_analysis key) output)])))
- [state (list)]
- it)]
- (in [state (extension_analysis name (list.reversed output))])))
+ [name phase archive state]
+ (<>.some (<>.and <code>.text <code>.any))
+ it
+ (do [! try.monad]
+ [[state output] (monad.mix ! (.function (_ [key value] [state output])
+ (do !
+ [[state value] (phase archive (` (.is .Any (~ value))) state)]
+ (in [state (list.partial value (text_analysis key) output)])))
+ [state (list)]
+ it)]
+ (in [state (extension_analysis name (list.reversed output))])))
(def text_synthesis
(template (_ <it>)
@@ -791,22 +791,22 @@
(.undefined)))
(generation <object>
- [name phase archive state]
- (list.partial head_key head_value tail)
- (do [! try.monad]
- [[state output] (monad.mix !
- (.function (_ [key value] [state output])
- (case key
- (pattern (text_synthesis key))
- (do try.monad
- [[state value] (phase archive value state)]
- (in [state (list.partial [key value] output)]))
-
- _
- (.undefined)))
- [state (list)]
- (pairs (list.partial head_key head_value tail)))]
- (in [state (js.object (list.reversed output))])))
+ [name phase archive state]
+ (list.partial head_key head_value tail)
+ (do [! try.monad]
+ [[state output] (monad.mix !
+ (.function (_ [key value] [state output])
+ (case key
+ (pattern (text_synthesis key))
+ (do try.monad
+ [[state value] (phase archive value state)]
+ (in [state (list.partial [key value] output)]))
+
+ _
+ (.undefined)))
+ [state (list)]
+ (pairs (list.partial head_key head_value tail)))]
+ (in [state (js.object (list.reversed output))])))
(def .public object
(syntax (_ [it (<>.some <code>.any)])
diff --git a/stdlib/source/library/lux/ffi.old.lux b/stdlib/source/library/lux/ffi.old.lux
index a577a3b6d..a199b5012 100644
--- a/stdlib/source/library/lux/ffi.old.lux
+++ b/stdlib/source/library/lux/ffi.old.lux
@@ -6,12 +6,11 @@
["[0]" monad (.only Monad do)]
["[0]" enum]]
[control
+ ["<>" parser]
["[0]" function]
["[0]" io]
["[0]" maybe]
- ["[0]" try (.only Try)]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" try (.only Try)]]
[data
["[0]" product]
["[0]" bit (.use "[1]#[0]" codec)]
@@ -23,8 +22,9 @@
["[0]" macro (.only with_symbols)
[syntax (.only syntax)]
["^" pattern]
- ["[0]" code]
- ["[0]" template]]
+ ["[0]" template]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
["[0]" meta]]])
(with_template [<name> <op> <from> <to>]
@@ -324,7 +324,7 @@
(text.replaced "/" "."))
(def (generic_class_type' mode type_params in_array? name+params
- class_type')
+ class_type')
(-> Primitive_Mode (List Type_Parameter) Bit [Text (List GenericType)]
(-> Primitive_Mode (List Type_Parameter) Bit GenericType Code)
Code)
diff --git a/stdlib/source/library/lux/ffi.php.lux b/stdlib/source/library/lux/ffi.php.lux
index 00b35e83d..f5f357021 100644
--- a/stdlib/source/library/lux/ffi.php.lux
+++ b/stdlib/source/library/lux/ffi.php.lux
@@ -6,10 +6,9 @@
[abstract
[monad (.only do)]]
[control
+ ["<>" parser (.use "[1]#[0]" monad)]
["[0]" io]
- ["[0]" maybe]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" maybe]]
[data
["[0]" product]
["[0]" text
@@ -20,8 +19,9 @@
abstract]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]
- ["[0]" template]]]])
+ ["[0]" template]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]])
(primitive .public (Object brand) Any)
@@ -224,7 +224,7 @@
(-> Code Code Code (List Nullable) Bit Bit Nullable Code)
(let [g!inputs (input_variables inputsT)]
(` (def ((~ g!method)
- [(~+ (list#each product.right g!inputs))])
+ [(~+ (list#each product.right g!inputs))])
(-> [(~+ (list#each nullable_type inputsT))]
(~ (|> (nullable_type outputT)
(try_type try?)
@@ -286,8 +286,8 @@
{#Virtual [method alias inputsT io? try? outputT]}
(let [g!inputs (input_variables inputsT)]
(` (def ((~ (qualify (maybe.else method alias)))
- [(~+ (list#each product.right g!inputs))]
- (~ g!object))
+ [(~+ (list#each product.right g!inputs))]
+ (~ g!object))
(-> [(~+ (list#each nullable_type inputsT))]
(~ g!type)
(~ (|> (nullable_type outputT)
diff --git a/stdlib/source/library/lux/ffi.scm.lux b/stdlib/source/library/lux/ffi.scm.lux
index 49296eef7..27f8c4f4f 100644
--- a/stdlib/source/library/lux/ffi.scm.lux
+++ b/stdlib/source/library/lux/ffi.scm.lux
@@ -6,10 +6,9 @@
[abstract
[monad (.only do)]]
[control
+ ["<>" parser (.use "[1]#[0]" monad)]
["[0]" io]
- ["[0]" maybe]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" maybe]]
[data
["[0]" product]
["[0]" text
@@ -20,8 +19,9 @@
abstract]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]
- ["[0]" template]]]])
+ ["[0]" template]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]])
(primitive .public (Object brand) Any)
@@ -189,7 +189,7 @@
(-> Code Code Code (List Nilable) Bit Bit Nilable Code)
(let [g!inputs (input_variables inputsT)]
(` (def ((~ g!method)
- [(~+ (list#each product.right g!inputs))])
+ [(~+ (list#each product.right g!inputs))])
(-> [(~+ (list#each nilable_type inputsT))]
(~ (|> (nilable_type outputT)
(try_type try?)
diff --git a/stdlib/source/library/lux/ffi/export.js.lux b/stdlib/source/library/lux/ffi/export.js.lux
index 2f635e20b..e40ea1964 100644
--- a/stdlib/source/library/lux/ffi/export.js.lux
+++ b/stdlib/source/library/lux/ffi/export.js.lux
@@ -7,8 +7,7 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]]
[data
[text
["%" \\format]]
@@ -17,7 +16,8 @@
["[0]" set]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
["[0]" random]]
[target
diff --git a/stdlib/source/library/lux/ffi/export.jvm.lux b/stdlib/source/library/lux/ffi/export.jvm.lux
index 8d3cc0ea1..6aebb2c13 100644
--- a/stdlib/source/library/lux/ffi/export.jvm.lux
+++ b/stdlib/source/library/lux/ffi/export.jvm.lux
@@ -2,14 +2,14 @@
[library
[lux (.except function)
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" list (.use "[1]#[0]" monad)]]]
[macro
[syntax (.only syntax)]
- ["[0]" code]]]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]]
["[0]" //])
(type (API of)
diff --git a/stdlib/source/library/lux/ffi/export.lua.lux b/stdlib/source/library/lux/ffi/export.lua.lux
index 6cfe5b891..66b98998d 100644
--- a/stdlib/source/library/lux/ffi/export.lua.lux
+++ b/stdlib/source/library/lux/ffi/export.lua.lux
@@ -7,8 +7,7 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]]
[data
[text
["%" \\format]]
@@ -17,7 +16,8 @@
["[0]" set]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
["[0]" random]]
[target
diff --git a/stdlib/source/library/lux/ffi/export.py.lux b/stdlib/source/library/lux/ffi/export.py.lux
index 1a4b3e054..42309927e 100644
--- a/stdlib/source/library/lux/ffi/export.py.lux
+++ b/stdlib/source/library/lux/ffi/export.py.lux
@@ -7,8 +7,7 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]]
[data
[text
["%" \\format]]
@@ -17,7 +16,8 @@
["[0]" set]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
["[0]" random]]
[target
diff --git a/stdlib/source/library/lux/ffi/export.rb.lux b/stdlib/source/library/lux/ffi/export.rb.lux
index 1266c730c..6777bfa86 100644
--- a/stdlib/source/library/lux/ffi/export.rb.lux
+++ b/stdlib/source/library/lux/ffi/export.rb.lux
@@ -8,8 +8,7 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]]
[data
["[0]" text
["%" \\format]
@@ -19,7 +18,8 @@
["[0]" set]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
["[0]" random]]
[target
diff --git a/stdlib/source/library/lux/macro/context.lux b/stdlib/source/library/lux/macro/context.lux
index fef8ae1d8..4d4224ccf 100644
--- a/stdlib/source/library/lux/macro/context.lux
+++ b/stdlib/source/library/lux/macro/context.lux
@@ -5,16 +5,18 @@
[monad (.only do)]
["[0]" predicate (.only Predicate)]]
[control
+ ["?" parser]
["[0]" exception (.only exception)]
- ["[0]" maybe]
- ["?" parser (.only)
- ["?[0]" code]]]
+ ["[0]" maybe]]
[data
["[0]" text (.use "[1]#[0]" equivalence monoid)]
[collection
["[0]" list]
[dictionary
["[0]" plist (.only PList)]]]]
+ [macro
+ ["[0]" code
+ ["?[1]" \\parser]]]
["[0]" meta (.only)
["[0]" symbol (.use "[1]#[0]" codec)]]]]
["[0]" // (.only)
diff --git a/stdlib/source/library/lux/macro/local.lux b/stdlib/source/library/lux/macro/local.lux
index 4e762b81d..ef15fbe10 100644
--- a/stdlib/source/library/lux/macro/local.lux
+++ b/stdlib/source/library/lux/macro/local.lux
@@ -5,10 +5,9 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser]
["[0]" try (.only Try)]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" product]
["[0]" text]
@@ -18,7 +17,8 @@
["[0]" plist (.only PList)]]]]]]
["[0]" // (.only)
[syntax (.only syntax)]
- ["[1][0]" code]])
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]])
(exception .public (unknown_module [module Text])
(exception.report
@@ -106,7 +106,7 @@
seed meta.seed
g!pop (//.symbol "pop")
_ (.let [g!pop (is Symbol
- ["" (//code.format g!pop)])]
+ ["" (code.format g!pop)])]
(..push_one [g!pop (..pop_all (list#each product.left macros) g!pop)]))]
(in (` ((~ g!pop))))))
diff --git a/stdlib/source/library/lux/macro/syntax.lux b/stdlib/source/library/lux/macro/syntax.lux
index 897b778e5..380713ff0 100644
--- a/stdlib/source/library/lux/macro/syntax.lux
+++ b/stdlib/source/library/lux/macro/syntax.lux
@@ -5,10 +5,9 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser]
["[0]" maybe]
- ["[0]" try]
- ["<>" parser (.only)
- ["</>" code (.only Parser)]]]
+ ["[0]" try]]
[data
["[0]" text (.use "[1]#[0]" monoid)]
[collection
@@ -20,7 +19,8 @@
["[0]" rev]
["[0]" frac]]]]]
["[0]" // (.only with_symbols)
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["</>" \\parser (.only Parser)]]]
["[0]" /
["[1][0]" export]])
diff --git a/stdlib/source/library/lux/macro/syntax/check.lux b/stdlib/source/library/lux/macro/syntax/check.lux
index 6649a6864..7a4b6ac73 100644
--- a/stdlib/source/library/lux/macro/syntax/check.lux
+++ b/stdlib/source/library/lux/macro/syntax/check.lux
@@ -6,12 +6,12 @@
[equivalence (.only Equivalence)]
[monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
["[0]" product]]
[macro
- ["[0]" code]]]])
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]])
(def extension
"lux check")
diff --git a/stdlib/source/library/lux/macro/syntax/declaration.lux b/stdlib/source/library/lux/macro/syntax/declaration.lux
index c4cac1e99..dbb86e1ce 100644
--- a/stdlib/source/library/lux/macro/syntax/declaration.lux
+++ b/stdlib/source/library/lux/macro/syntax/declaration.lux
@@ -4,15 +4,15 @@
[abstract
[equivalence (.only Equivalence)]]
[control
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser (.use "[1]#[0]" monad)]]
[data
["[0]" product]
["[0]" text]
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
[macro
- ["[0]" code]]]])
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]])
(type .public Declaration
(Record
diff --git a/stdlib/source/library/lux/macro/syntax/definition.lux b/stdlib/source/library/lux/macro/syntax/definition.lux
index eee400dfe..b93e0bd64 100644
--- a/stdlib/source/library/lux/macro/syntax/definition.lux
+++ b/stdlib/source/library/lux/macro/syntax/definition.lux
@@ -5,9 +5,8 @@
[equivalence (.only Equivalence)]
[monad (.only do)]]
[control
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]
+ ["[0]" exception (.only exception)]]
[data
["[0]" sum]
["[0]" product]
@@ -17,7 +16,8 @@
[collection
["[0]" list]]]
["[0]" macro (.only)
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
["[0]" meta (.only)
["[0]" location]]]]
["[0]" // (.only)
diff --git a/stdlib/source/library/lux/macro/syntax/export.lux b/stdlib/source/library/lux/macro/syntax/export.lux
index 1a80d36c1..e47b09750 100644
--- a/stdlib/source/library/lux/macro/syntax/export.lux
+++ b/stdlib/source/library/lux/macro/syntax/export.lux
@@ -4,10 +4,11 @@
[abstract
[monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[macro
- ["^" pattern]]]])
+ ["^" pattern]
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]]])
(def .public default_policy
Code
diff --git a/stdlib/source/library/lux/macro/syntax/input.lux b/stdlib/source/library/lux/macro/syntax/input.lux
index b0022bc25..1354a9a54 100644
--- a/stdlib/source/library/lux/macro/syntax/input.lux
+++ b/stdlib/source/library/lux/macro/syntax/input.lux
@@ -4,14 +4,14 @@
[abstract
[equivalence (.only Equivalence)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
["[0]" product]
[collection
["[0]" list (.use "[1]#[0]" monad)]]]
[macro
- ["[0]" code]]]])
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]])
(type .public Input
(Record
diff --git a/stdlib/source/library/lux/macro/syntax/type/variable.lux b/stdlib/source/library/lux/macro/syntax/type/variable.lux
index ada8766cb..2658572e6 100644
--- a/stdlib/source/library/lux/macro/syntax/type/variable.lux
+++ b/stdlib/source/library/lux/macro/syntax/type/variable.lux
@@ -3,13 +3,11 @@
[lux (.except)
[abstract
[equivalence (.only Equivalence)]]
- [control
- [parser
- ["<[0]>" code (.only Parser)]]]
[data
["[0]" text]]
[macro
- ["[0]" code]]]])
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]])
(type .public Variable
Text)
diff --git a/stdlib/source/library/lux/macro/template.lux b/stdlib/source/library/lux/macro/template.lux
index 834599518..68a37a237 100644
--- a/stdlib/source/library/lux/macro/template.lux
+++ b/stdlib/source/library/lux/macro/template.lux
@@ -5,10 +5,9 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser (.use "[1]#[0]" functor)]
["[0]" try (.only Try)]
- ["[0]" exception (.only exception)]
- ["<>" parser (.use "[1]#[0]" functor)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" bit (.use "[1]#[0]" codec)]
["[0]" text]
@@ -25,8 +24,9 @@
["[0]" frac (.use "[1]#[0]" decimal)]]]]]
["[0]" // (.only)
[syntax (.only syntax)]
- ["[0]" code]
- ["[0]" local]])
+ ["[0]" local]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]])
(def .public spliced
(syntax (_ [parts (<code>.tuple (<>.some <code>.any))])
diff --git a/stdlib/source/library/lux/math.lux b/stdlib/source/library/lux/math.lux
index 6404b3343..63f2e931c 100644
--- a/stdlib/source/library/lux/math.lux
+++ b/stdlib/source/library/lux/math.lux
@@ -7,10 +7,9 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser]
["[0]" try (.only Try)]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[data
[text
["%" \\format]]
@@ -18,7 +17,9 @@
["[0]" list (.use "[1]#[0]" mix)]]]
[macro
[syntax (.only syntax)]
- ["[0]" template]]
+ ["[0]" template]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
[tool
[compiler
["[0]" phase (.use "[1]#[0]" monad)]
diff --git a/stdlib/source/library/lux/math/infix.lux b/stdlib/source/library/lux/math/infix.lux
index af6268977..01930c466 100644
--- a/stdlib/source/library/lux/math/infix.lux
+++ b/stdlib/source/library/lux/math/infix.lux
@@ -4,15 +4,15 @@
[abstract
[monad (.only do)]]
[control
- ["<>" parser (.use "[1]#[0]" functor)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser (.use "[1]#[0]" functor)]]
[data
["[0]" product]
[collection
["[0]" list (.use "[1]#[0]" mix)]]]
[macro
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/math/modular.lux b/stdlib/source/library/lux/math/modular.lux
index 4fcb27d65..489f798ab 100644
--- a/stdlib/source/library/lux/math/modular.lux
+++ b/stdlib/source/library/lux/math/modular.lux
@@ -8,16 +8,16 @@
[codec (.only Codec)]
[monad (.only do)]]
[control
+ ["<>" parser]
["[0]" try (.only Try)]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" monoid)
["<[1]>" \\parser (.only Parser)]]]
[macro
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["i" int (.use "[1]#[0]" decimal)]]]
diff --git a/stdlib/source/library/lux/math/modulus.lux b/stdlib/source/library/lux/math/modulus.lux
index f22bb1d39..d440669ae 100644
--- a/stdlib/source/library/lux/math/modulus.lux
+++ b/stdlib/source/library/lux/math/modulus.lux
@@ -6,12 +6,11 @@
[monad (.only do)]]
[control
["[0]" try (.only Try)]
- ["[0]" exception (.only exception)]
- [parser
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[macro
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["i" int]]]
diff --git a/stdlib/source/library/lux/math/number/complex.lux b/stdlib/source/library/lux/math/number/complex.lux
index 611d66066..d22ce8ad2 100644
--- a/stdlib/source/library/lux/math/number/complex.lux
+++ b/stdlib/source/library/lux/math/number/complex.lux
@@ -4,14 +4,15 @@
[abstract
[equivalence (.only Equivalence)]]
[control
- ["[0]" maybe]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" maybe]]
[data
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
[macro
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
[math
[number
["f" frac]
diff --git a/stdlib/source/library/lux/math/number/ratio.lux b/stdlib/source/library/lux/math/number/ratio.lux
index 2e77616c6..6deac08f0 100644
--- a/stdlib/source/library/lux/math/number/ratio.lux
+++ b/stdlib/source/library/lux/math/number/ratio.lux
@@ -8,17 +8,17 @@
[codec (.only Codec)]
[monad (.only do)]]
[control
+ ["<>" parser]
["[0]" function]
["[0]" maybe]
- ["[0]" try]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" try]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" monoid)]]
[macro
[syntax (.only syntax)]
- ["[0]" code]]]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]]]
[//
["n" nat (.use "[1]#[0]" decimal)]])
diff --git a/stdlib/source/library/lux/meta/configuration.lux b/stdlib/source/library/lux/meta/configuration.lux
index d52b60914..d0dea1e76 100644
--- a/stdlib/source/library/lux/meta/configuration.lux
+++ b/stdlib/source/library/lux/meta/configuration.lux
@@ -7,10 +7,9 @@
[monoid (.only Monoid)]
[monad (.only do)]]
[control
+ ["<>" parser]
["[0]" maybe (.use "[1]#[0]" functor)]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" text (.use "[1]#[0]" equivalence)
["%" \\format]
@@ -21,7 +20,8 @@
["/" plist]]]]
[macro
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)]]]])
diff --git a/stdlib/source/library/lux/meta/version.lux b/stdlib/source/library/lux/meta/version.lux
index da5d349bb..f7df8ac2f 100644
--- a/stdlib/source/library/lux/meta/version.lux
+++ b/stdlib/source/library/lux/meta/version.lux
@@ -5,16 +5,16 @@
[abstract
[monad (.only do)]]
[control
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" exception (.only exception)]]
[data
["[0]" text (.use "[1]#[0]" equivalence)]
[collection
["[0]" list (.use "[1]#[0]" mix)]]]
[macro
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[tool
[compiler
[version (.only Version)]]]]])
diff --git a/stdlib/source/library/lux/program.lux b/stdlib/source/library/lux/program.lux
index ca420eb9f..99fb1832e 100644
--- a/stdlib/source/library/lux/program.lux
+++ b/stdlib/source/library/lux/program.lux
@@ -9,11 +9,11 @@
[concurrency
["[0]" thread]]
["<>" parser (.only)
- ["<[0]>" code]
["<[0]>" cli]]]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]]]])
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]]])
(type Arguments
(Variant
diff --git a/stdlib/source/library/lux/static.lux b/stdlib/source/library/lux/static.lux
index 53426b0f8..a473f8288 100644
--- a/stdlib/source/library/lux/static.lux
+++ b/stdlib/source/library/lux/static.lux
@@ -5,14 +5,14 @@
[abstract
[monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]]
[data
[collection
["[0]" list (.use "[1]#[0]" functor mix)]]]
[macro
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)]
["[0]" random (.only Random)]]]])
diff --git a/stdlib/source/library/lux/target/jvm/modifier.lux b/stdlib/source/library/lux/target/jvm/modifier.lux
index 058027fab..ac45136d6 100644
--- a/stdlib/source/library/lux/target/jvm/modifier.lux
+++ b/stdlib/source/library/lux/target/jvm/modifier.lux
@@ -5,15 +5,15 @@
["[0]" equivalence (.only Equivalence)]
["[0]" monoid (.only Monoid)]]
[control
- ["[0]" try]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" try]]
[data
["[0]" binary
["[1]F" \\format (.only Writer)]]]
[macro (.only with_symbols)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
["[0]" number (.only hex)
["[0]" i64]]]
diff --git a/stdlib/source/library/lux/target/lua.lux b/stdlib/source/library/lux/target/lua.lux
index 635117c5e..f12cfbac6 100644
--- a/stdlib/source/library/lux/target/lua.lux
+++ b/stdlib/source/library/lux/target/lua.lux
@@ -7,9 +7,7 @@
[hash (.only Hash)]
["[0]" enum]]
[control
- ["[0]" pipe]
- [parser
- ["<[0]>" code]]]
+ ["[0]" pipe]]
[data
["[0]" text (.only)
["%" \\format (.only format)]]
@@ -18,7 +16,8 @@
[macro
[syntax (.only syntax)]
["[0]" template]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/target/php.lux b/stdlib/source/library/lux/target/php.lux
index 99b0c1d3f..2ad1863b6 100644
--- a/stdlib/source/library/lux/target/php.lux
+++ b/stdlib/source/library/lux/target/php.lux
@@ -7,9 +7,7 @@
[hash (.only Hash)]
["[0]" enum]]
[control
- ["[0]" pipe]
- [parser
- ["<[0]>" code]]]
+ ["[0]" pipe]]
[data
["[0]" text (.only)
["%" \\format (.only format)]]
@@ -18,7 +16,8 @@
[macro
[syntax (.only syntax)]
["[0]" template]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/target/python.lux b/stdlib/source/library/lux/target/python.lux
index 1ce2789e7..ddc601161 100644
--- a/stdlib/source/library/lux/target/python.lux
+++ b/stdlib/source/library/lux/target/python.lux
@@ -8,9 +8,7 @@
[hash (.only Hash)]
["[0]" enum]]
[control
- ["[0]" pipe]
- [parser
- ["<[0]>" code]]]
+ ["[0]" pipe]]
[data
["[0]" text (.only)
["%" \\format (.only format)]]
@@ -19,7 +17,8 @@
[macro
[syntax (.only syntax)]
["[0]" template]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/target/r.lux b/stdlib/source/library/lux/target/r.lux
index 6ec808501..6d56eea58 100644
--- a/stdlib/source/library/lux/target/r.lux
+++ b/stdlib/source/library/lux/target/r.lux
@@ -4,9 +4,7 @@
[control
["[0]" pipe]
["[0]" function]
- ["[0]" maybe (.use "[1]#[0]" functor)]
- [parser
- ["<[0]>" code]]]
+ ["[0]" maybe (.use "[1]#[0]" functor)]]
[data
["[0]" text
["%" \\format (.only format)]]
@@ -15,7 +13,8 @@
[macro
[syntax (.only syntax)]
["[0]" template]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["f" frac]]]
diff --git a/stdlib/source/library/lux/target/ruby.lux b/stdlib/source/library/lux/target/ruby.lux
index 980307456..5a5f5af9d 100644
--- a/stdlib/source/library/lux/target/ruby.lux
+++ b/stdlib/source/library/lux/target/ruby.lux
@@ -7,9 +7,7 @@
[hash (.only Hash)]
["[0]" enum]]
[control
- ["[0]" pipe]
- [parser
- ["<[0]>" code]]]
+ ["[0]" pipe]]
[data
["[0]" text (.only)
["%" \\format (.only format)]]
@@ -18,7 +16,8 @@
[macro
[syntax (.only syntax)]
["[0]" template]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/test.lux b/stdlib/source/library/lux/test.lux
index b7cdc5ca7..110675c5d 100644
--- a/stdlib/source/library/lux/test.lux
+++ b/stdlib/source/library/lux/test.lux
@@ -6,6 +6,7 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser]
["[0]" pipe]
["[0]" maybe]
["[0]" try]
@@ -13,9 +14,7 @@
["[0]" io]
[concurrency
["[0]" atom (.only Atom)]
- ["[0]" async (.only Async) (.use "[1]#[0]" monad)]]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["[0]" async (.only Async) (.use "[1]#[0]" monad)]]]
[data
["[0]" product]
["[0]" text (.only)
@@ -35,7 +34,8 @@
["f" frac]]]
[macro
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
["[0]" meta (.only)
["[0]" symbol]]
[world
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis.lux
index 81d6ccdf5..c3ccd43e9 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis.lux
@@ -9,9 +9,7 @@
["[0]" function]
["[0]" maybe]
["[0]" try (.only Try)]
- ["[0]" exception (.only Exception)]
- [parser
- ["<[0]>" code]]]
+ ["[0]" exception (.only Exception)]]
[data
["[0]" product]
["[0]" bit (.use "[1]#[0]" equivalence)]
@@ -20,7 +18,9 @@
[collection
["[0]" list (.use "[1]#[0]" functor mix)]]]
[macro
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/common_lisp.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/common_lisp.lux
index 5e7529857..377ce23c4 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/common_lisp.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/common_lisp.lux
@@ -1,32 +1,10 @@
(.require
[library
- [lux (.except)
- ["[0]" ffi]
- [abstract
- ["[0]" monad (.only do)]]
- [control
- ["<>" parser (.only)
- ["<c>" code (.only Parser)]]]
- [data
- [collection
- ["[0]" array (.only Array)]
- ["[0]" dictionary]
- ["[0]" list]]]
- ["[0]" type (.only)
- ["[0]" check]]
- ["@" target
- ["_" common_lisp]]]]
- [//
- ["/" lux (.only custom)]
- [//
- ["[0]" bundle]
- [//
- ["[0]" analysis
- ["[1]/[0]" type]]
- [//
- ["[0]" analysis (.only Analysis Operation Phase Handler Bundle)]
- [///
- ["[0]" phase]]]]]])
+ [lux (.except)]]
+ [///
+ ["[0]" bundle]
+ [///
+ [analysis (.only Bundle)]]])
(def .public bundle
Bundle
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 af44a8272..102e5adcf 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
@@ -5,13 +5,15 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" array]
["[0]" dictionary]
["[0]" list]]]
+ [macro
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
["[0]" type (.only)
["[0]" check]]
["@" target (.only)
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 32ca3161d..16cb9e777 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
@@ -7,12 +7,11 @@
["[0]" monad (.only do)]
["[0]" predicate]]
[control
+ ["<>" parser]
["[0]" pipe]
["[0]" maybe (.use "[1]#[0]" functor)]
["[0]" try (.only Try) (.use "[1]#[0]" monad)]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" exception (.only exception)]]
[data
[binary (.only Binary)
["[0]" \\format]]
@@ -27,7 +26,9 @@
["[0]" sequence]]]
[macro
["^" pattern]
- ["[0]" template]]
+ ["[0]" template]
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]
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 b507b7a15..3c0e4cc86 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
@@ -5,13 +5,15 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" array]
["[0]" dictionary]
["[0]" list]]]
+ [macro
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
["[0]" type (.only)
["[0]" check]]
["@" target (.only)
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 448735394..75e4e8516 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
@@ -4,11 +4,10 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser]
["[0]" maybe]
["[0]" try]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" text (.only)
["%" \\format (.only format)]]
@@ -16,7 +15,9 @@
["[0]" list (.use "[1]#[0]" functor)]
["[0]" dictionary (.only Dictionary)]]]
[macro
- ["^" pattern]]
+ ["^" pattern]
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]]]
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 27e096e18..3852d2b24 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
@@ -5,13 +5,15 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<c>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" array (.only Array)]
["[0]" dictionary]
["[0]" list]]]
+ [macro
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
["[0]" type (.only)
["[0]" check]]
["@" target (.only)
@@ -31,7 +33,7 @@
(def array::new
Handler
(custom
- [<c>.any
+ [<code>.any
(function (_ extension phase archive lengthC)
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -44,7 +46,7 @@
(def array::length
Handler
(custom
- [<c>.any
+ [<code>.any
(function (_ extension phase archive arrayC)
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -57,7 +59,7 @@
(def array::read
Handler
(custom
- [(<>.and <c>.any <c>.any)
+ [(<>.and <code>.any <code>.any)
(function (_ extension phase archive [indexC arrayC])
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -72,7 +74,7 @@
(def array::write
Handler
(custom
- [(all <>.and <c>.any <c>.any <c>.any)
+ [(all <>.and <code>.any <code>.any <code>.any)
(function (_ extension phase archive [indexC valueC arrayC])
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -89,7 +91,7 @@
(def array::delete
Handler
(custom
- [(all <>.and <c>.any <c>.any)
+ [(all <>.and <code>.any <code>.any)
(function (_ extension phase archive [indexC arrayC])
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -127,7 +129,7 @@
(def object::new
Handler
(custom
- [(all <>.and <c>.text (<>.some <c>.any))
+ [(all <>.and <code>.text (<>.some <code>.any))
(function (_ extension phase archive [constructor inputsC])
(do [! phase.monad]
[inputsA (monad.each ! (|>> (phase archive) (analysis/type.with_type Any)) inputsC)
@@ -137,7 +139,7 @@
(def object::get
Handler
(custom
- [(all <>.and <c>.text <c>.any)
+ [(all <>.and <code>.text <code>.any)
(function (_ extension phase archive [fieldC objectC])
(do phase.monad
[objectA (analysis/type.with_type ..Object
@@ -149,7 +151,7 @@
(def object::do
Handler
(custom
- [(all <>.and <c>.text <c>.any (<>.some <c>.any))
+ [(all <>.and <code>.text <code>.any (<>.some <code>.any))
(function (_ extension phase archive [methodC objectC inputsC])
(do [! phase.monad]
[objectA (analysis/type.with_type ..Object
@@ -174,7 +176,7 @@
(def php::constant
Handler
(custom
- [<c>.text
+ [<code>.text
(function (_ extension phase archive name)
(do phase.monad
[_ (analysis/type.infer Any)]
@@ -183,7 +185,7 @@
(def php::apply
Handler
(custom
- [(all <>.and <c>.any (<>.some <c>.any))
+ [(all <>.and <code>.any (<>.some <code>.any))
(function (_ extension phase archive [abstractionC inputsC])
(do [! phase.monad]
[abstractionA (analysis/type.with_type ..Function
@@ -195,7 +197,7 @@
(def php::pack
Handler
(custom
- [(all <>.and <c>.any <c>.any)
+ [(all <>.and <code>.any <code>.any)
(function (_ extension phase archive [formatC dataC])
(do [! phase.monad]
[formatA (analysis/type.with_type Text
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 d44c8f5de..3c6e4b452 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
@@ -5,13 +5,15 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" array]
["[0]" dictionary]
["[0]" list]]]
+ [macro
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
["[0]" type (.only)
["[0]" check]]
["@" target (.only)
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 c499e23d8..a53133555 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
@@ -5,13 +5,15 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<c>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" array (.only Array)]
["[0]" dictionary]
["[0]" list]]]
+ [macro
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
["[0]" type (.only)
["[0]" check]]
["@" target
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 b43fb8c4f..3029aec9d 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
@@ -5,13 +5,15 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" array]
["[0]" dictionary]
["[0]" list]]]
+ [macro
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
["[0]" type (.only)
["[0]" check]]
["@" target (.only)
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 0220eb1f4..bf1493940 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
@@ -5,13 +5,15 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["<>" parser (.only)
- ["<c>" code (.only Parser)]]]
+ ["<>" parser]]
[data
[collection
["[0]" array (.only Array)]
["[0]" dictionary]
["[0]" list]]]
+ [macro
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
["[0]" type (.only)
["[0]" check]]
["@" target (.only)
@@ -31,7 +33,7 @@
(def array::new
Handler
(custom
- [<c>.any
+ [<code>.any
(function (_ extension phase archive lengthC)
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -44,7 +46,7 @@
(def array::length
Handler
(custom
- [<c>.any
+ [<code>.any
(function (_ extension phase archive arrayC)
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -57,7 +59,7 @@
(def array::read
Handler
(custom
- [(<>.and <c>.any <c>.any)
+ [(<>.and <code>.any <code>.any)
(function (_ extension phase archive [indexC arrayC])
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -72,7 +74,7 @@
(def array::write
Handler
(custom
- [(all <>.and <c>.any <c>.any <c>.any)
+ [(all <>.and <code>.any <code>.any <code>.any)
(function (_ extension phase archive [indexC valueC arrayC])
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -89,7 +91,7 @@
(def array::delete
Handler
(custom
- [(all <>.and <c>.any <c>.any)
+ [(all <>.and <code>.any <code>.any)
(function (_ extension phase archive [indexC arrayC])
(<| analysis/type.with_var
(function (_ [@var :var:]))
@@ -131,7 +133,7 @@
(def scheme::constant
Handler
(custom
- [<c>.text
+ [<code>.text
(function (_ extension phase archive name)
(do phase.monad
[_ (analysis/type.infer Any)]
@@ -140,7 +142,7 @@
(def scheme::apply
Handler
(custom
- [(all <>.and <c>.any (<>.some <c>.any))
+ [(all <>.and <code>.any (<>.some <code>.any))
(function (_ extension phase archive [abstractionC inputsC])
(do [! phase.monad]
[abstractionA (analysis/type.with_type ..Function
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux
index e2833a6c1..05da344e7 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux
@@ -5,11 +5,10 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["<>" parser (.use "[1]#[0]" monad)]
["[0]" pipe]
["[0]" try (.only Try) (.use "[1]#[0]" functor)]
- ["[0]" exception]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" exception]]
[data
["[0]" product]
[binary (.only Binary)
@@ -24,7 +23,9 @@
["[0]" set (.only Set)]]]
[macro
["^" pattern]
- ["[0]" template]]
+ ["[0]" template]
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux
index 20f7aa448..0d02b109f 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux
@@ -7,11 +7,10 @@
["[0]" monad (.only do)]]
[control
[io (.only IO)]
+ ["<>" parser]
["[0]" maybe (.use "[1]#[0]" functor)]
["[0]" try]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" binary]
["[0]" product]
@@ -24,7 +23,8 @@
["[0]" set (.only Set)]]]
[macro
["^" pattern]
- ["[0]" code]]
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]]]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/runtime.lux
index 25e2a8d21..42c75531d 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/runtime.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/runtime.lux
@@ -5,9 +5,8 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" function]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" function]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" hash)
@@ -18,7 +17,8 @@
["[0]" sequence]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)
["[0]" i64]]]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/extension.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/extension.lux
index 5e96d3ec3..75cb5a86e 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/extension.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/extension.lux
@@ -3,16 +3,14 @@
[lux (.except)
[abstract
["[0]" monad (.only do)]]
- [control
- [parser
- ["<[0]>" code]]]
[data
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
["[0]" meta]
["[0]" macro (.only with_symbols)
- ["[0]" code]
- [syntax (.only syntax)]]]]
+ [syntax (.only syntax)]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]]]
["[0]" ///
["[1][0]" extension]
[//
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/js/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/js/runtime.lux
index 45ec51f44..3eaadc3f5 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/js/runtime.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/js/runtime.lux
@@ -5,9 +5,8 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" function]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" function]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" hash)
@@ -19,7 +18,8 @@
["[0]" sequence]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)
["[0]" i64]]]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/lua/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/lua/runtime.lux
index 1e9b333c4..f7fb63f10 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/lua/runtime.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/lua/runtime.lux
@@ -5,9 +5,8 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" function]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" function]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" hash)
@@ -19,7 +18,8 @@
["[0]" sequence]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)
["[0]" i64]]]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/runtime.lux
index c1867a620..1254f50bc 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/runtime.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/runtime.lux
@@ -5,9 +5,8 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" function]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" function]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" hash)
@@ -19,7 +18,8 @@
["[0]" sequence]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)
["[0]" i64]]]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/python/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/python/runtime.lux
index 40b7ebd56..dfef07d7c 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/python/runtime.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/python/runtime.lux
@@ -4,9 +4,8 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" function]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" function]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" hash)
@@ -18,7 +17,8 @@
["[0]" sequence]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)
["f" frac]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/runtime.lux
index 69fff57bc..089bdf2b9 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/runtime.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/runtime.lux
@@ -5,9 +5,8 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" function]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" function]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" hash)
@@ -19,7 +18,8 @@
["[0]" sequence]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)
["n" nat]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/ruby/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/ruby/runtime.lux
index 4754c861b..74261ccc3 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/ruby/runtime.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/ruby/runtime.lux
@@ -5,9 +5,8 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" function]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" function]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" hash)
@@ -19,7 +18,8 @@
["[0]" sequence]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)
["[0]" i64]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/extension/common.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/extension/common.lux
index bbb7db4e9..a99e83f84 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/extension/common.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/extension/common.lux
@@ -3,9 +3,6 @@
[lux (.except)
[abstract
["[0]" monad (.only do)]]
- [control
- [parser
- ["<[0]>" code]]]
[data
["[0]" product]
["[0]" text]
@@ -15,8 +12,9 @@
["[0]" list (.use "[1]#[0]" functor)]
["dict" dictionary (.only Dictionary)]]]
["[0]" macro (.only with_symbols)
- ["[0]" code]
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[target
["_" scheme (.only Expression Computation)]]]]
["[0]" ///
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/runtime.lux
index 35e49dc7e..0b287568a 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/runtime.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/scheme/runtime.lux
@@ -5,9 +5,8 @@
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" function]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["<>" parser]
+ ["[0]" function]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" hash)
@@ -19,7 +18,8 @@
["[0]" sequence]]]
["[0]" macro (.only)
[syntax (.only syntax)]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number (.only hex)
["[0]" i64]]]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/syntax.lux b/stdlib/source/library/lux/tool/compiler/language/lux/syntax.lux
index 1e1e062eb..7b31c9a0a 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/syntax.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/syntax.lux
@@ -31,10 +31,9 @@
[abstract
[monad (.only do)]]
[control
+ ["<>" parser]
["[0]" maybe]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[data
["[0]" text (.only)
[\\parser (.only Offset)]
@@ -44,7 +43,9 @@
["[0]" dictionary (.only Dictionary)]]]
[macro
[syntax (.only syntax)]
- ["[0]" template]]
+ ["[0]" template]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
[meta
["[0]" symbol]]
[math
diff --git a/stdlib/source/library/lux/type.lux b/stdlib/source/library/lux/type.lux
index ac1e01df2..00afaddc0 100644
--- a/stdlib/source/library/lux/type.lux
+++ b/stdlib/source/library/lux/type.lux
@@ -6,10 +6,9 @@
[equivalence (.only Equivalence)]
[monad (.only Monad do)]]
[control
+ ["<>" parser]
["[0]" function]
- ["[0]" maybe]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" maybe]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" monoid equivalence)]
@@ -19,7 +18,8 @@
["[0]" macro (.only)
[syntax (.only syntax)]
["^" pattern]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat (.use "[1]#[0]" decimal)]]]
diff --git a/stdlib/source/library/lux/type/dynamic.lux b/stdlib/source/library/lux/type/dynamic.lux
index 9afa8f395..fd98afcdf 100644
--- a/stdlib/source/library/lux/type/dynamic.lux
+++ b/stdlib/source/library/lux/type/dynamic.lux
@@ -4,14 +4,14 @@
["[0]" debug]
[control
["[0]" try (.only Try)]
- ["[0]" exception (.only exception)]
- [parser
- ["<[0]>" code]]]
+ ["[0]" exception (.only exception)]]
[data
[text
["%" \\format]]]
[macro (.only with_symbols)
- ["[0]" syntax (.only syntax)]]
+ ["[0]" syntax (.only syntax)]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
["[0]" type (.only)
["[0]" primitive (.only primitive)]]]])
diff --git a/stdlib/source/library/lux/type/implicit.lux b/stdlib/source/library/lux/type/implicit.lux
index 3b330f2c1..f831c551b 100644
--- a/stdlib/source/library/lux/type/implicit.lux
+++ b/stdlib/source/library/lux/type/implicit.lux
@@ -5,10 +5,9 @@
["[0]" monad (.only do)]
["[0]" equivalence]]
[control
+ ["<>" parser]
["[0]" maybe]
- ["[0]" try]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" try]]
[data
["[0]" product]
["[0]" text (.use "[1]#[0]" equivalence)
@@ -17,8 +16,9 @@
["[0]" list (.use "[1]#[0]" monad mix)]
["[0]" dictionary (.only Dictionary)]]]
["[0]" macro (.only)
- ["[0]" code]
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
[math
["[0]" number (.only)
["n" nat]]]
diff --git a/stdlib/source/library/lux/type/poly.lux b/stdlib/source/library/lux/type/poly.lux
index 1555bfe9a..4f70bb937 100644
--- a/stdlib/source/library/lux/type/poly.lux
+++ b/stdlib/source/library/lux/type/poly.lux
@@ -2,14 +2,11 @@
[library
[lux (.except)
["[0]" meta]
- ["[0]" type]
[abstract
["[0]" monad (.only do)]]
[control
- ["[0]" maybe]
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" type (.only Env)]
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser (.use "[1]#[0]" monad)]
+ ["[0]" maybe]]
[data
["[0]" product]
["[0]" text]
@@ -19,10 +16,13 @@
[macro (.only with_symbols)
[syntax (.only syntax)]
["^" pattern]
- ["[0]" code]]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
- ["n" nat]]]]])
+ ["n" nat]]]
+ ["[0]" type (.only)
+ ["<[1]>" \\parser (.only Env)]]]])
(def .public polytypic
(syntax (_ [name <code>.local
diff --git a/stdlib/source/library/lux/type/primitive.lux b/stdlib/source/library/lux/type/primitive.lux
index c7d4a147a..50c288e1c 100644
--- a/stdlib/source/library/lux/type/primitive.lux
+++ b/stdlib/source/library/lux/type/primitive.lux
@@ -5,16 +5,16 @@
[abstract
[monad (.only do)]]
[control
- ["<>" parser (.use "[1]#[0]" monad)
- ["<[0]>" code (.only Parser)]]]
+ ["<>" parser (.use "[1]#[0]" monad)]]
[data
["[0]" text (.use "[1]#[0]" equivalence)]
[collection
["[0]" list (.use "[1]#[0]" functor)]]]
["[0]" macro (.only)
["^" pattern]
- ["[0]" code]
["[0]" context]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser (.only Parser)]]
[syntax (.only syntax)
["|[0]|" export]]]
[meta
diff --git a/stdlib/source/library/lux/type/quotient.lux b/stdlib/source/library/lux/type/quotient.lux
index 8e96bfd3b..98292553c 100644
--- a/stdlib/source/library/lux/type/quotient.lux
+++ b/stdlib/source/library/lux/type/quotient.lux
@@ -3,11 +3,10 @@
[lux (.except type)
[abstract
[equivalence (only Equivalence)]]
- [control
- [parser
- ["<[0]>" code]]]
[macro (.only with_symbols)
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
["[0]" type
[primitive (.except)]]]])
diff --git a/stdlib/source/library/lux/type/refinement.lux b/stdlib/source/library/lux/type/refinement.lux
index a4054407c..3a7a2ef85 100644
--- a/stdlib/source/library/lux/type/refinement.lux
+++ b/stdlib/source/library/lux/type/refinement.lux
@@ -3,11 +3,10 @@
[lux (.except only type)
[abstract
[predicate (.only Predicate)]]
- [control
- [parser
- ["<[0]>" code]]]
["[0]" macro (.only)
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
["[0]" type (.only)
[primitive (.except)]]]])
diff --git a/stdlib/source/library/lux/type/resource.lux b/stdlib/source/library/lux/type/resource.lux
index 6a35b1567..760f07dc2 100644
--- a/stdlib/source/library/lux/type/resource.lux
+++ b/stdlib/source/library/lux/type/resource.lux
@@ -6,10 +6,9 @@
["[0]" monad (.only Monad do)
[indexed (.only IxMonad)]]]
[control
+ ["<>" parser]
["[0]" maybe]
- ["[0]" exception (.only exception)]
- ["<>" parser (.only)
- ["<[0]>" code (.only Parser)]]]
+ ["[0]" exception (.only exception)]]
[data
[text
["%" \\format (.only format)]]
@@ -18,7 +17,9 @@
["[0]" sequence (.only Sequence)]
["[0]" list (.use "[1]#[0]" functor mix)]]]
["[0]" macro (.only)
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code
+ ["<[1]>" \\parser (.only Parser)]]]
[math
[number
["n" nat]]]
diff --git a/stdlib/source/library/lux/type/unit.lux b/stdlib/source/library/lux/type/unit.lux
index bcc8f672c..e7327e551 100644
--- a/stdlib/source/library/lux/type/unit.lux
+++ b/stdlib/source/library/lux/type/unit.lux
@@ -5,11 +5,10 @@
[equivalence (.only Equivalence)]
[order (.only Order)]
[enum (.only Enum)]]
- [control
- [parser
- ["<[0]>" code]]]
["[0]" macro (.only)
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
[math
[number
["i" int]]]]]
diff --git a/stdlib/source/library/lux/type/unit/scale.lux b/stdlib/source/library/lux/type/unit/scale.lux
index 9eacbb81b..e88ee83e8 100644
--- a/stdlib/source/library/lux/type/unit/scale.lux
+++ b/stdlib/source/library/lux/type/unit/scale.lux
@@ -1,11 +1,11 @@
(.require
[library
[lux (.except type)
- [control
- [parser
- ["<[0]>" code]]]
+ [control]
["[0]" macro (.only)
- [syntax (.only syntax)]]
+ [syntax (.only syntax)]
+ ["[0]" code
+ ["<[1]>" \\parser]]]
[math
[number
["i" int]
diff --git a/stdlib/source/library/lux/world/net/http/client.lux b/stdlib/source/library/lux/world/net/http/client.lux
index 832ff6f23..52812a399 100644
--- a/stdlib/source/library/lux/world/net/http/client.lux
+++ b/stdlib/source/library/lux/world/net/http/client.lux
@@ -11,9 +11,7 @@
["[0]" maybe (.use "[1]#[0]" functor)]
["[0]" try (.only Try)]
[concurrency
- ["[0]" async (.only Async)]]
- [parser
- ["<[0]>" code]]]
+ ["[0]" async (.only Async)]]]
[data
["[0]" binary (.only Binary)]
["[0]" text]
@@ -21,8 +19,9 @@
["[0]" dictionary]]]
[macro
[syntax (.only syntax)]
- ["[0]" code]
- ["[0]" template]]
+ ["[0]" template]
+ ["[0]" code (.only)
+ ["<[1]>" \\parser]]]
[math
[number
["n" nat]
diff --git a/stdlib/source/library/lux/control/parser/code.lux b/stdlib/source/parser/lux/macro/code.lux
index a73b18c55..85490e2d0 100644
--- a/stdlib/source/library/lux/control/parser/code.lux
+++ b/stdlib/source/parser/lux/macro/code.lux
@@ -4,6 +4,7 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["//" parser]
["[0]" try (.only Try)]]
[data
["[0]" bit]
@@ -19,8 +20,7 @@
["[0]" rev]
["[0]" frac]]]
[meta
- ["[0]" symbol]]]]
- ["[0]" //])
+ ["[0]" symbol]]]])
(def (un_paired pairs)
(All (_ a) (-> (List [a a]) (List a)))
diff --git a/stdlib/source/library/lux/control/parser/type.lux b/stdlib/source/parser/lux/type.lux
index b4609b897..a107a1778 100644
--- a/stdlib/source/library/lux/control/parser/type.lux
+++ b/stdlib/source/parser/lux/type.lux
@@ -4,6 +4,7 @@
[abstract
["[0]" monad (.only do)]]
[control
+ ["//" parser]
["[0]" try (.only Try)]
["[0]" exception (.only exception)]
["[0]" function]]
@@ -20,8 +21,7 @@
[number
["n" nat (.use "[1]#[0]" decimal)]]]
["[0]" type (.use "[1]#[0]" equivalence)
- ["[0]" check]]]]
- ["[0]" //])
+ ["[0]" check]]]])
(def |recursion_dummy|
(template (|recursion_dummy|)