aboutsummaryrefslogtreecommitdiff
path: root/stdlib
diff options
context:
space:
mode:
authorEduardo Julian2022-04-07 03:27:59 -0400
committerEduardo Julian2022-04-07 03:27:59 -0400
commit9224e54bf175ebe13c3fae42f04b649413c737e7 (patch)
treedab2b19f79e79020792ee0bfe0fb6abe522639a3 /stdlib
parent7542b0addd9eaf01dd5f1c4c8a39b67f51a4bd06 (diff)
De-sigil-ification: &
Diffstat (limited to '')
-rw-r--r--stdlib/source/documentation/lux.lux16
-rw-r--r--stdlib/source/library/lux.lux164
-rw-r--r--stdlib/source/library/lux/abstract/apply.lux8
-rw-r--r--stdlib/source/library/lux/abstract/comonad.lux2
-rw-r--r--stdlib/source/library/lux/abstract/comonad/cofree.lux12
-rw-r--r--stdlib/source/library/lux/abstract/enum.lux2
-rw-r--r--stdlib/source/library/lux/abstract/hash.lux6
-rw-r--r--stdlib/source/library/lux/abstract/interval.lux50
-rw-r--r--stdlib/source/library/lux/abstract/monad.lux2
-rw-r--r--stdlib/source/library/lux/abstract/monad/free.lux16
-rw-r--r--stdlib/source/library/lux/abstract/order.lux6
-rw-r--r--stdlib/source/library/lux/control/concurrency/async.lux4
-rw-r--r--stdlib/source/library/lux/control/concurrency/frp.lux4
-rw-r--r--stdlib/source/library/lux/control/concurrency/stm.lux4
-rw-r--r--stdlib/source/library/lux/control/continuation.lux30
-rw-r--r--stdlib/source/library/lux/control/function/mutual.lux38
-rw-r--r--stdlib/source/library/lux/control/io.lux4
-rw-r--r--stdlib/source/library/lux/control/lazy.lux4
-rw-r--r--stdlib/source/library/lux/control/maybe.lux12
-rw-r--r--stdlib/source/library/lux/control/parser.lux38
-rw-r--r--stdlib/source/library/lux/control/parser/analysis.lux6
-rw-r--r--stdlib/source/library/lux/control/parser/code.lux2
-rw-r--r--stdlib/source/library/lux/control/parser/json.lux4
-rw-r--r--stdlib/source/library/lux/control/parser/synthesis.lux10
-rw-r--r--stdlib/source/library/lux/control/parser/type.lux2
-rw-r--r--stdlib/source/library/lux/control/pipe.lux2
-rw-r--r--stdlib/source/library/lux/control/reader.lux8
-rw-r--r--stdlib/source/library/lux/control/region.lux8
-rw-r--r--stdlib/source/library/lux/control/security/policy.lux4
-rw-r--r--stdlib/source/library/lux/control/state.lux20
-rw-r--r--stdlib/source/library/lux/control/thread.lux4
-rw-r--r--stdlib/source/library/lux/control/try.lux8
-rw-r--r--stdlib/source/library/lux/control/writer.lux8
-rw-r--r--stdlib/source/library/lux/data/bit.lux20
-rw-r--r--stdlib/source/library/lux/data/collection/dictionary/ordered.lux16
-rw-r--r--stdlib/source/library/lux/data/collection/list.lux18
-rw-r--r--stdlib/source/library/lux/data/collection/queue.lux2
-rw-r--r--stdlib/source/library/lux/data/collection/sequence.lux4
-rw-r--r--stdlib/source/library/lux/data/collection/set.lux2
-rw-r--r--stdlib/source/library/lux/data/collection/set/multi.lux2
-rw-r--r--stdlib/source/library/lux/data/collection/set/ordered.lux10
-rw-r--r--stdlib/source/library/lux/data/collection/stream.lux6
-rw-r--r--stdlib/source/library/lux/data/collection/tree/zipper.lux2
-rw-r--r--stdlib/source/library/lux/data/color.lux2
-rw-r--r--stdlib/source/library/lux/data/format/css.lux12
-rw-r--r--stdlib/source/library/lux/data/format/css/value.lux24
-rw-r--r--stdlib/source/library/lux/data/format/html.lux12
-rw-r--r--stdlib/source/library/lux/data/format/tar.lux4
-rw-r--r--stdlib/source/library/lux/data/identity.lux24
-rw-r--r--stdlib/source/library/lux/data/product.lux16
-rw-r--r--stdlib/source/library/lux/data/store.lux2
-rw-r--r--stdlib/source/library/lux/data/sum.lux6
-rw-r--r--stdlib/source/library/lux/data/text.lux4
-rw-r--r--stdlib/source/library/lux/data/text/regex.lux24
-rw-r--r--stdlib/source/library/lux/data/text/unicode/block.lux2
-rw-r--r--stdlib/source/library/lux/data/trace.lux2
-rw-r--r--stdlib/source/library/lux/documentation.lux22
-rw-r--r--stdlib/source/library/lux/ffi.jvm.lux4
-rw-r--r--stdlib/source/library/lux/ffi.lux32
-rw-r--r--stdlib/source/library/lux/ffi.old.lux4
-rw-r--r--stdlib/source/library/lux/ffi.php.lux100
-rw-r--r--stdlib/source/library/lux/locale.lux2
-rw-r--r--stdlib/source/library/lux/locale/language.lux2
-rw-r--r--stdlib/source/library/lux/locale/territory.lux2
-rw-r--r--stdlib/source/library/lux/macro.lux4
-rw-r--r--stdlib/source/library/lux/macro/pattern.lux40
-rw-r--r--stdlib/source/library/lux/macro/syntax.lux2
-rw-r--r--stdlib/source/library/lux/math.lux2
-rw-r--r--stdlib/source/library/lux/math/modular.lux2
-rw-r--r--stdlib/source/library/lux/math/number/frac.lux4
-rw-r--r--stdlib/source/library/lux/math/number/i16.lux2
-rw-r--r--stdlib/source/library/lux/math/number/i32.lux2
-rw-r--r--stdlib/source/library/lux/math/number/i64.lux6
-rw-r--r--stdlib/source/library/lux/math/number/i8.lux2
-rw-r--r--stdlib/source/library/lux/math/number/int.lux8
-rw-r--r--stdlib/source/library/lux/math/number/nat.lux8
-rw-r--r--stdlib/source/library/lux/math/number/ratio.lux2
-rw-r--r--stdlib/source/library/lux/math/number/rev.lux8
-rw-r--r--stdlib/source/library/lux/math/random.lux4
-rw-r--r--stdlib/source/library/lux/meta.lux4
-rw-r--r--stdlib/source/library/lux/meta/symbol.lux4
-rw-r--r--stdlib/source/library/lux/target/common_lisp.lux50
-rw-r--r--stdlib/source/library/lux/target/jvm/bytecode.lux6
-rw-r--r--stdlib/source/library/lux/target/jvm/constant/pool.lux2
-rw-r--r--stdlib/source/library/lux/target/jvm/encoding/signed.lux2
-rw-r--r--stdlib/source/library/lux/target/jvm/encoding/unsigned.lux2
-rw-r--r--stdlib/source/library/lux/target/jvm/method.lux2
-rw-r--r--stdlib/source/library/lux/target/jvm/type.lux2
-rw-r--r--stdlib/source/library/lux/target/jvm/type/signature.lux2
-rw-r--r--stdlib/source/library/lux/target/lua.lux2
-rw-r--r--stdlib/source/library/lux/target/php.lux6
-rw-r--r--stdlib/source/library/lux/target/python.lux4
-rw-r--r--stdlib/source/library/lux/target/scheme.lux6
-rw-r--r--stdlib/source/library/lux/time.lux4
-rw-r--r--stdlib/source/library/lux/time/date.lux4
-rw-r--r--stdlib/source/library/lux/time/day.lux6
-rw-r--r--stdlib/source/library/lux/time/duration.lux4
-rw-r--r--stdlib/source/library/lux/time/instant.lux4
-rw-r--r--stdlib/source/library/lux/time/month.lux6
-rw-r--r--stdlib/source/library/lux/time/year.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/default/init.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/default/platform.lux14
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/analysis/complex.lux4
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/analysis/coverage.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/analysis/inference.lux4
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/case.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/analysis/complex.lux4
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/directive.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/js.lux10
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/jvm.lux68
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lua.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/lux.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/php.lux10
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/python.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/ruby.lux8
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/analysis/scheme.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/jvm.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/jvm/host.lux4
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/php/common.lux6
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/case.lux36
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/loop.lux62
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function.lux18
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/implementation.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/init.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/runtime.lux12
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/function.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/procedure/host.lux4
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/case.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/loop.lux4
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/synthesis.lux22
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/member.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/side.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/synthesis/simple.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/meta/archive/unit.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/meta/cache/dependency/artifact.lux4
-rw-r--r--stdlib/source/library/lux/tool/compiler/meta/packager/ruby.lux4
-rw-r--r--stdlib/source/library/lux/tool/compiler/phase.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/reference.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/reference/variable.lux2
-rw-r--r--stdlib/source/library/lux/type.lux8
-rw-r--r--stdlib/source/library/lux/type/abstract.lux32
-rw-r--r--stdlib/source/library/lux/type/check.lux14
-rw-r--r--stdlib/source/library/lux/type/resource.lux2
-rw-r--r--stdlib/source/library/lux/type/unit.lux4
-rw-r--r--stdlib/source/library/lux/world/db/jdbc/output.lux32
-rw-r--r--stdlib/source/library/lux/world/output/video/resolution.lux2
-rw-r--r--stdlib/source/library/lux/world/shell.lux2
-rw-r--r--stdlib/source/program/aedifex/artifact.lux4
-rw-r--r--stdlib/source/program/aedifex/command/auto.lux2
-rw-r--r--stdlib/source/program/aedifex/command/build.lux63
-rw-r--r--stdlib/source/program/aedifex/command/clean.lux11
-rw-r--r--stdlib/source/program/aedifex/command/deploy.lux3
-rw-r--r--stdlib/source/program/aedifex/command/install.lux6
-rw-r--r--stdlib/source/program/aedifex/command/pom.lux49
-rw-r--r--stdlib/source/program/aedifex/command/test.lux44
-rw-r--r--stdlib/source/program/aedifex/command/version.lux6
-rw-r--r--stdlib/source/program/aedifex/dependency.lux4
-rw-r--r--stdlib/source/program/aedifex/dependency/deployment.lux24
-rw-r--r--stdlib/source/program/aedifex/format.lux8
-rw-r--r--stdlib/source/program/aedifex/hash.lux2
-rw-r--r--stdlib/source/program/aedifex/input.lux2
-rw-r--r--stdlib/source/program/aedifex/parser.lux11
-rw-r--r--stdlib/source/program/aedifex/pom.lux6
-rw-r--r--stdlib/source/program/aedifex/repository/local.lux60
-rw-r--r--stdlib/source/program/aedifex/repository/remote.lux4
-rw-r--r--stdlib/source/program/aedifex/runtime.lux23
-rw-r--r--stdlib/source/program/compositor.lux8
-rw-r--r--stdlib/source/specification/lux/abstract/interval.lux2
-rw-r--r--stdlib/source/test/aedifex/cache.lux2
-rw-r--r--stdlib/source/test/aedifex/cli.lux4
-rw-r--r--stdlib/source/test/lux.lux8
-rw-r--r--stdlib/source/test/lux/control/security/policy.lux2
-rw-r--r--stdlib/source/test/lux/data/collection/dictionary.lux2
-rw-r--r--stdlib/source/test/lux/data/collection/set.lux2
-rw-r--r--stdlib/source/test/lux/data/collection/set/ordered.lux6
-rw-r--r--stdlib/source/test/lux/data/collection/stream.lux2
-rw-r--r--stdlib/source/test/lux/data/collection/tree.lux40
-rw-r--r--stdlib/source/test/lux/data/collection/tree/finger.lux4
-rw-r--r--stdlib/source/test/lux/math/number/i64.lux2
-rw-r--r--stdlib/source/test/lux/meta.lux22
-rw-r--r--stdlib/source/test/lux/meta/configuration.lux2
-rw-r--r--stdlib/source/test/lux/tool/compiler/language/lux/analysis/module.lux16
-rw-r--r--stdlib/source/test/lux/tool/compiler/meta/cli.lux6
-rw-r--r--stdlib/source/test/lux/type/check.lux8
-rw-r--r--stdlib/source/test/lux/world/file.lux4
186 files changed, 1042 insertions, 1010 deletions
diff --git a/stdlib/source/documentation/lux.lux b/stdlib/source/documentation/lux.lux
index 63fa76177..31161cb4f 100644
--- a/stdlib/source/documentation/lux.lux
+++ b/stdlib/source/documentation/lux.lux
@@ -175,12 +175,12 @@
[(is (List Nat)
(list 0 1 2 3))])
-(documentation: /.list&
+(documentation: /.partial_list
"List literals, with the last element being a tail-list."
[(is (List Nat)
- (list& 0 1 2 3
- (is (List Nat)
- (list 4 5 6))))])
+ (partial_list 0 1 2 3
+ (is (List Nat)
+ (list 4 5 6))))])
(documentation: /.Union
"Union types."
@@ -466,7 +466,7 @@
"Express a value that implements an interface."
[(is (Order Int)
(implementation
- (def: &equivalence
+ (def: equivalence
equivalence)
(def: (< reference subject)
(< reference subject))
@@ -476,7 +476,7 @@
"Interface implementation."
[(implementation: .public order
(Order Int)
- (def: &equivalence
+ (def: equivalence
equivalence)
(def: (< test subject)
(< test subject)))])
@@ -511,7 +511,7 @@
[(type: .public (Order a)
(Interface
(is (Equivalence a)
- &equivalence)
+ equivalence)
(is (-> a a Bit)
<)))])
@@ -931,7 +931,7 @@
..Ex
..->
..list
- ..list&
+ ..partial_list
..Union
..Tuple
..Or
diff --git a/stdlib/source/library/lux.lux b/stdlib/source/library/lux.lux
index bf523ec7c..5c6c625a8 100644
--- a/stdlib/source/library/lux.lux
+++ b/stdlib/source/library/lux.lux
@@ -1165,12 +1165,12 @@
(meta#in {#Item (list#mix |#Item| |#End| (list#reversed xs))
{#End}}))
-(macro:' .public (list& xs)
+(macro:' .public (partial_list xs)
({{#Item last init}
(meta#in (list (list#mix |#Item| last init)))
_
- (failure "Wrong syntax for list&")}
+ (failure "Wrong syntax for partial_list")}
(list#reversed xs)))
(macro:' .public (Union tokens)
@@ -1512,8 +1512,8 @@
(-> Text a ($' PList a) ($' PList a)))
({{#Item [k' v'] plist'}
(if (text#= k k')
- (list& [k v] plist')
- (list& [k' v'] (plist#with k v plist')))
+ (partial_list [k v] plist')
+ (partial_list [k' v'] (plist#with k v plist')))
{#End}
(list [k v])}
@@ -2065,7 +2065,7 @@
xs
{#Item [x xs']}
- (list& x sep (list#interposed sep xs'))}
+ (partial_list x sep (list#interposed sep xs'))}
xs))
(def:''' .private (single_expansion token)
@@ -2423,18 +2423,18 @@
[??? (macro? name)]
(if ???
(do meta_monad
- [init_expansion (single_expansion (form$ (list& (symbol$ name) (form$ args) body branches')))]
+ [init_expansion (single_expansion (form$ (partial_list (symbol$ name) (form$ args) body branches')))]
(expander init_expansion))
(do meta_monad
[sub_expansion (expander branches')]
- (in (list& (form$ (list& (symbol$ name) args))
- body
- sub_expansion)))))
+ (in (partial_list (form$ (partial_list (symbol$ name) args))
+ body
+ sub_expansion)))))
{#Item pattern {#Item body branches'}}
(do meta_monad
[sub_expansion (expander branches')]
- (in (list& pattern body sub_expansion)))
+ (in (partial_list pattern body sub_expansion)))
{#End}
(do meta_monad [] (in (list)))
@@ -2464,7 +2464,7 @@
[pattern+ (full_expansion #1 pattern)]
(case pattern+
{#Item pattern' {#End}}
- (in (list& pattern' body branches))
+ (in (partial_list pattern' body branches))
_
(failure "`pattern` can only expand to 1 pattern.")))
@@ -2474,7 +2474,7 @@
(macro:' .private (pattern#or tokens)
(case tokens
- (pattern (list& [_ {#Form patterns}] body branches))
+ (pattern (partial_list [_ {#Form patterns}] body branches))
(case patterns
{#End}
(failure "pattern#or cannot have 0 patterns")
@@ -2522,7 +2522,7 @@
(macro:' .public (function tokens)
(case (is (Maybe [Text Code (List Code) Code])
(case tokens
- (pattern (list [_ {#Form (list& [_ {#Symbol ["" name]}] head tail)}] body))
+ (pattern (list [_ {#Form (partial_list [_ {#Symbol ["" name]}] head tail)}] body))
{#Some name head tail body}
_
@@ -2578,7 +2578,7 @@
(do maybe_monad
[it (someP itP tokens)
.let [[tokens tail] it]]
- (in [tokens (list& head tail)]))
+ (in [tokens (partial_list head tail)]))
{#None}
{#Some [tokens (list)]}))
@@ -2598,7 +2598,7 @@
(All (_ a)
(-> (Parser a) (Parser a)))
(case tokens
- (pattern (list& [_ {#Tuple tuple}] tokens'))
+ (pattern (partial_list [_ {#Tuple tuple}] tokens'))
(do maybe_monad
[it (parsed itP tuple)]
(in [tokens' it]))
@@ -2609,7 +2609,7 @@
(def:' .private (bindingP tokens)
(Parser [Text Code])
(case tokens
- (pattern (list& [_ {#Symbol ["" name]}] value &rest))
+ (pattern (partial_list [_ {#Symbol ["" name]}] value &rest))
{#Some [&rest [name value]]}
_
@@ -2627,7 +2627,7 @@
(def:' .private (anyP tokens)
(Parser Code)
(case tokens
- (pattern (list& code tokens'))
+ (pattern (partial_list code tokens'))
{#Some [tokens' code]}
_
@@ -2636,7 +2636,7 @@
(def:' .private (localP tokens)
(-> (List Code) (Maybe [(List Code) Text]))
(case tokens
- (pattern (list& [_ {#Symbol ["" local]}] tokens'))
+ (pattern (partial_list [_ {#Symbol ["" local]}] tokens'))
{#Some [tokens' local]}
_
@@ -2664,7 +2664,7 @@
[(def:' .private (<parser> tokens)
(-> (List Code) (Maybe [(List Code) [Text (List <parameter_type>)]]))
(case tokens
- (pattern (list& [_ {#Form local_declaration}] tokens'))
+ (pattern (partial_list [_ {#Form local_declaration}] tokens'))
(do maybe_monad
[% (localP local_declaration)
.let' [[local_declaration name] %]
@@ -2684,7 +2684,7 @@
(def:' .private (export_policyP tokens)
(-> (List Code) [(List Code) Code])
(case tokens
- (pattern (list& candidate tokens'))
+ (pattern (partial_list candidate tokens'))
(case candidate
[_ {#Bit it}]
[tokens' candidate]
@@ -2718,11 +2718,11 @@
(-> (List Code) (Maybe [(List Code) [(Maybe Code) Code]]))
(case tokens
... TB
- (pattern (list& type body tokens'))
+ (pattern (partial_list type body tokens'))
{#Some [tokens' [{#Some type} body]]}
... B
- (pattern (list& body tokens'))
+ (pattern (partial_list body tokens'))
{#Some [tokens' [{#None} body]]}
_
@@ -2808,7 +2808,7 @@
(template [<name> <form> <message>]
[(macro: .public (<name> tokens)
(case (list#reversed tokens)
- (pattern (list& last init))
+ (pattern (partial_list last init))
(meta#in (list (list#mix (is (-> Code Code Code)
(function (_ pre post) (` <form>)))
last
@@ -2850,13 +2850,13 @@
(list input)
{#Some idx}
- (list& ("lux text clip" 0 idx input)
- (text#all_split_by splitter
- (let [after_offset ("lux i64 +" 1 idx)
- after_length ("lux i64 -"
- after_offset
- ("lux text size" input))]
- ("lux text clip" after_offset after_length input))))))
+ (partial_list ("lux text clip" 0 idx input)
+ (text#all_split_by splitter
+ (let [after_offset ("lux i64 +" 1 idx)
+ after_length ("lux i64 -"
+ after_offset
+ ("lux text size" input))]
+ ("lux text clip" after_offset after_length input))))))
(def: (item idx xs)
(All (_ a)
@@ -2921,10 +2921,10 @@
(-> Type Type (Maybe Type))
(case type_fn
{#UnivQ env body}
- {#Some (reduced (list& type_fn param env) body)}
+ {#Some (reduced (partial_list type_fn param env) body)}
{#ExQ env body}
- {#Some (reduced (list& type_fn param env) body)}
+ {#Some (reduced (partial_list type_fn param env) body)}
{#Apply A F}
(do maybe_monad
@@ -2942,7 +2942,7 @@
(-> Type (List Type))
(case type
{<tag> left right}
- (list& left (<name> right))
+ (partial_list left (<name> right))
_
(list type)))]
@@ -3224,7 +3224,7 @@
{#End}
(in (list)))]
- (in (list& head tail)))
+ (in (partial_list head tail)))
{#End}
{#Some (list)}))
@@ -3232,10 +3232,10 @@
(def: (caseP tokens)
(-> (List Code) (Maybe [(List Code) [Text Code]]))
(case tokens
- (pattern (list& [_ {#Variant (list [_ {#Symbol ["" niladic]}])}] tokens'))
+ (pattern (partial_list [_ {#Variant (list [_ {#Symbol ["" niladic]}])}] tokens'))
{#Some [tokens' [niladic (` .Any)]]}
- (pattern (list& [_ {#Variant (list& [_ {#Symbol ["" polyadic]}] caseT)}] tokens'))
+ (pattern (partial_list [_ {#Variant (partial_list [_ {#Symbol ["" polyadic]}] caseT)}] tokens'))
{#Some [tokens' [polyadic (` (..Tuple (~+ caseT)))]]}
_
@@ -3255,7 +3255,7 @@
(def: (slotP tokens)
(-> (List Code) (Maybe [(List Code) [Text Code]]))
(case tokens
- (pattern (list& [_ {#Symbol ["" slot]}] type tokens'))
+ (pattern (partial_list [_ {#Symbol ["" slot]}] type tokens'))
{#Some [tokens' [slot type]]}
_
@@ -3290,7 +3290,7 @@
(def: (textP tokens)
(-> (List Code) (Maybe [(List Code) Text]))
(case tokens
- (pattern (list& [_ {#Text it}] tokens'))
+ (pattern (partial_list [_ {#Text it}] tokens'))
{#Some [tokens' it]}
_
@@ -3300,7 +3300,7 @@
(-> Code (Meta (Tuple Code (Maybe (Either (List Text) (List Text))))))
({[_ {#Form {#Item [_ {#Symbol declarer}] parameters}}]
(do meta_monad
- [declaration (single_expansion (form$ (list& (symbol$ declarer) parameters)))]
+ [declaration (single_expansion (form$ (partial_list (symbol$ declarer) parameters)))]
(case declaration
(pattern (list type [_ {#Variant tags}]))
(case (everyP textP tags)
@@ -3411,24 +3411,24 @@
(def: (referrals_parser tokens)
(-> (List Code) (Meta [Referrals (List Code)]))
(case tokens
- (pattern#or (pattern (list& [_ {#Variant (list& [_ {#Text "+"}] defs)}] tokens'))
- (pattern (list& [_ {#Variant (list& [_ {#Text "only"}] defs)}] tokens')))
+ (pattern#or (pattern (partial_list [_ {#Variant (partial_list [_ {#Text "+"}] defs)}] tokens'))
+ (pattern (partial_list [_ {#Variant (partial_list [_ {#Text "only"}] defs)}] tokens')))
(do meta_monad
[defs' (..referral_references defs)]
(in [{#Only defs'} tokens']))
- (pattern#or (pattern (list& [_ {#Variant (list& [_ {#Text "-"}] defs)}] tokens'))
- (pattern (list& [_ {#Variant (list& [_ {#Text "exclude"}] defs)}] tokens')))
+ (pattern#or (pattern (partial_list [_ {#Variant (partial_list [_ {#Text "-"}] defs)}] tokens'))
+ (pattern (partial_list [_ {#Variant (partial_list [_ {#Text "exclude"}] defs)}] tokens')))
(do meta_monad
[defs' (..referral_references defs)]
(in [{#Exclude defs'} tokens']))
- (pattern#or (pattern (list& [_ {#Text "*"}] tokens'))
- (pattern (list& [_ {#Text "all"}] tokens')))
+ (pattern#or (pattern (partial_list [_ {#Text "*"}] tokens'))
+ (pattern (partial_list [_ {#Text "all"}] tokens')))
(meta#in [{#All} tokens'])
- (pattern#or (pattern (list& [_ {#Text "_"}] tokens'))
- (pattern (list& [_ {#Text "ignore"}] tokens')))
+ (pattern#or (pattern (partial_list [_ {#Text "_"}] tokens'))
+ (pattern (partial_list [_ {#Text "ignore"}] tokens')))
(meta#in [{#Ignore} tokens'])
_
@@ -3440,7 +3440,7 @@
{#End}
(meta#in [{#End} {#End}])
- (pattern (list& [_ {#Form (list& [_ {#Text prefix}] structs)}] parts'))
+ (pattern (partial_list [_ {#Form (partial_list [_ {#Text prefix}] structs)}] parts'))
(do meta_monad
[structs' (monad#each meta_monad
(function (_ struct)
@@ -3589,7 +3589,7 @@
#refer_open (list)]])))
... Nested
- (pattern [_ {#Tuple (list& [_ {#Symbol ["" module_name]}] extra)}])
+ (pattern [_ {#Tuple (partial_list [_ {#Symbol ["" module_name]}] extra)}])
(do meta_monad
[absolute_module_name (case (normal_parallel_path relative_root module_name)
{#Some parallel_path}
@@ -3607,13 +3607,13 @@
sub_imports
_
- (list& [#import_name absolute_module_name
- #import_alias {#None}
- #import_refer [#refer_defs referral
- #refer_open openings]]
- sub_imports))))
+ (partial_list [#import_name absolute_module_name
+ #import_alias {#None}
+ #import_refer [#refer_defs referral
+ #refer_open openings]]
+ sub_imports))))
- (pattern [_ {#Tuple (list& [_ {#Text alias}] [_ {#Symbol ["" module_name]}] extra)}])
+ (pattern [_ {#Tuple (partial_list [_ {#Text alias}] [_ {#Symbol ["" module_name]}] extra)}])
(do meta_monad
[absolute_module_name (case (normal_parallel_path relative_root module_name)
{#Some parallel_path}
@@ -3632,11 +3632,11 @@
sub_imports
_
- (list& [#import_name absolute_module_name
- #import_alias {#Some module_alias}
- #import_refer [#refer_defs referral
- #refer_open openings]]
- sub_imports))))
+ (partial_list [#import_name absolute_module_name
+ #import_alias {#Some module_alias}
+ #import_refer [#refer_defs referral
+ #refer_open openings]]
+ sub_imports))))
... Unrecognized syntax.
_
@@ -3878,7 +3878,7 @@
{#Item x xs'}
(case ys
{#Item y ys'}
- (list& [x y] (zipped_2 xs' ys'))
+ (partial_list [x y] (zipped_2 xs' ys'))
_
(list))
@@ -3888,10 +3888,10 @@
(macro: .public (open tokens)
(case tokens
- (pattern (list& [_ {#Form (list [_ {#Text alias}])}] body branches))
+ (pattern (partial_list [_ {#Form (list [_ {#Text alias}])}] body branches))
(do meta_monad
[g!temp (..generated_symbol "temp")]
- (in (list& g!temp (` (..open (~ g!temp) (~ (text$ alias)) (~ body))) branches)))
+ (in (partial_list g!temp (` (..open (~ g!temp) (~ (text$ alias)) (~ body))) branches)))
(pattern (list [_ {#Symbol name}] [_ {#Text alias}] body))
(do meta_monad
@@ -3944,7 +3944,7 @@
(macro: .public (cond tokens)
(case (list#reversed tokens)
- (pattern (list& else branches'))
+ (pattern (partial_list else branches'))
(case (pairs branches')
{#Some branches'}
(meta#in (list (list#mix (is (-> [Code Code] Code Code)
@@ -4163,7 +4163,7 @@
(macro: (refer tokens)
(case tokens
- (pattern (list& [_ {#Text module_name}] options))
+ (pattern (partial_list [_ {#Text module_name}] options))
(do meta_monad
[=refer (referrals module_name options)]
(referral_definitions module_name =refer))
@@ -4180,10 +4180,10 @@
(list (' "*"))
{#Only defs}
- (list (variant$ (list& (' "+") (list#each local$ defs))))
+ (list (variant$ (partial_list (' "+") (list#each local$ defs))))
{#Exclude defs}
- (list (variant$ (list& (' "-") (list#each local$ defs))))
+ (list (variant$ (partial_list (' "-") (list#each local$ defs))))
{#Ignore}
(list)
@@ -4191,8 +4191,8 @@
{#Nothing}
(list)))
openings (list#each (function (_ [alias structs])
- (form$ (list& (text$ (..module_alias (list (alias_stand_in 0) module_alias) alias))
- (list#each local$ structs))))
+ (form$ (partial_list (text$ (..module_alias (list (alias_stand_in 0) module_alias) alias))
+ (list#each local$ structs))))
r_opens)]
(` ((~! ..refer) (~ (text$ module_name))
(~+ localizations)
@@ -4204,7 +4204,7 @@
(meta#in (list (` (..let [(..open (~ (text$ (alias_stand_in 0)))) (~ struct)]
(~ (symbol$ member))))))
- (pattern (list& struct member args))
+ (pattern (partial_list struct member args))
(meta#in (list (` ((..# (~ struct) (~ member)) (~+ args)))))
_
@@ -4364,10 +4364,10 @@
(macro: .private (pattern#template tokens)
(case tokens
- (pattern (list& [_ {#Form (list [_ {#Tuple bindings}]
- [_ {#Tuple templates}])}]
- [_ {#Form data}]
- branches))
+ (pattern (partial_list [_ {#Form (list [_ {#Tuple bindings}]
+ [_ {#Tuple templates}])}]
+ [_ {#Form data}]
+ branches))
(case (is (Maybe (List Code))
(do maybe_monad
[bindings' (monad#each maybe_monad symbol_short bindings)
@@ -4414,7 +4414,7 @@
{#End}
{#Item y ys'}
- (list& x y (interleaved xs' ys')))))
+ (partial_list x y (interleaved xs' ys')))))
(def: (type_code type)
(-> Type Code)
@@ -4659,7 +4659,7 @@
(macro: (pattern#multi tokens)
(case tokens
- (pattern (list& [_meta {#Form levels}] body next_branches))
+ (pattern (partial_list [_meta {#Form levels}] body next_branches))
(do meta_monad
[mlc (multi_level_case^ levels)
.let [initial_bind? (case mlc
@@ -4923,8 +4923,8 @@
... {library/lux/tool/compiler/language/lux/generation.no_buffer_for_saving_code}
... Artifact ID: 0
... Which only ever happens for the Python compiler.
- (list& (` ("lux def" (~ g!_) [] #0))
- =refers)
+ (partial_list (` ("lux def" (~ g!_) [] #0))
+ =refers)
=refers)})))
(def: (embedded_expansions code)
@@ -4985,10 +4985,10 @@
(def: (methodP tokens)
(-> (List Code) (Maybe [(List Code) [Text Code]]))
(case tokens
- (pattern (list& [_ {#Form (list [_ {#Text "lux type check"}]
- type
- [_ {#Symbol ["" name]}])}]
- tokens'))
+ (pattern (partial_list [_ {#Form (list [_ {#Text "lux type check"}]
+ type
+ [_ {#Symbol ["" name]}])}]
+ tokens'))
{#Some [tokens' [name type]]}
_
diff --git a/stdlib/source/library/lux/abstract/apply.lux b/stdlib/source/library/lux/abstract/apply.lux
index 0d3a0fd1e..9a63c3747 100644
--- a/stdlib/source/library/lux/abstract/apply.lux
+++ b/stdlib/source/library/lux/abstract/apply.lux
@@ -9,7 +9,7 @@
(type: .public (Apply f)
(Interface
(is (Functor f)
- &functor)
+ functor)
(is (All (_ a b)
(-> (f a) (f (-> a b)) (f b)))
on)))
@@ -20,9 +20,9 @@
... TODO: Replace (All (_ a) (F (G a))) with (functor.Then F G)
(Apply (All (_ a) (F (G a))))))
- (def: &functor
- (functor.composite (the &functor f_apply)
- (the &functor g_apply)))
+ (def: functor
+ (functor.composite (the functor f_apply)
+ (the functor g_apply)))
(def: (on fgx fgf)
... TODO: Switch from this version to the one below (in comments) ASAP.
diff --git a/stdlib/source/library/lux/abstract/comonad.lux b/stdlib/source/library/lux/abstract/comonad.lux
index a0dd97014..72057bf06 100644
--- a/stdlib/source/library/lux/abstract/comonad.lux
+++ b/stdlib/source/library/lux/abstract/comonad.lux
@@ -15,7 +15,7 @@
(type: .public (CoMonad w)
(Interface
(is (Functor w)
- &functor)
+ functor)
(is (All (_ a)
(-> (w a) a))
out)
diff --git a/stdlib/source/library/lux/abstract/comonad/cofree.lux b/stdlib/source/library/lux/abstract/comonad/cofree.lux
index 1e173e7d4..4a198b0f6 100644
--- a/stdlib/source/library/lux/abstract/comonad/cofree.lux
+++ b/stdlib/source/library/lux/abstract/comonad/cofree.lux
@@ -1,9 +1,9 @@
(.using
- [library
- [lux "*"]]
- [// {"+" CoMonad}
- [//
- [functor {"+" Functor}]]])
+ [library
+ [lux "*"]]
+ [// {"+" CoMonad}
+ [//
+ [functor {"+" Functor}]]])
(type: .public (CoFree F a)
[a (F (CoFree F a))])
@@ -17,7 +17,7 @@
(implementation: .public (comonad dsl)
(All (_ F) (-> (Functor F) (CoMonad (CoFree F))))
- (def: &functor (..functor dsl))
+ (def: functor (..functor dsl))
(def: (out [head tail])
head)
diff --git a/stdlib/source/library/lux/abstract/enum.lux b/stdlib/source/library/lux/abstract/enum.lux
index 5ea97da4d..280c2b4d0 100644
--- a/stdlib/source/library/lux/abstract/enum.lux
+++ b/stdlib/source/library/lux/abstract/enum.lux
@@ -6,7 +6,7 @@
(type: .public (Enum e)
(Interface
- (is (Order e) &order)
+ (is (Order e) order)
(is (-> e e) succ)
(is (-> e e) pred)))
diff --git a/stdlib/source/library/lux/abstract/hash.lux b/stdlib/source/library/lux/abstract/hash.lux
index 04610b639..c1aa6e3dc 100644
--- a/stdlib/source/library/lux/abstract/hash.lux
+++ b/stdlib/source/library/lux/abstract/hash.lux
@@ -9,7 +9,7 @@
(type: .public (Hash a)
(Interface
(is (Equivalence a)
- &equivalence)
+ equivalence)
(is (-> a Nat)
hash)))
@@ -18,9 +18,9 @@
(def: (each f super)
(implementation
- (def: &equivalence
+ (def: equivalence
(# equivalence.functor each f
- (# super &equivalence)))
+ (# super equivalence)))
(def: hash
(|>> f (# super hash))))))
diff --git a/stdlib/source/library/lux/abstract/interval.lux b/stdlib/source/library/lux/abstract/interval.lux
index 5ed94dafe..131d18017 100644
--- a/stdlib/source/library/lux/abstract/interval.lux
+++ b/stdlib/source/library/lux/abstract/interval.lux
@@ -10,7 +10,7 @@
(type: .public (Interval a)
(Interface
(is (Enum a)
- &enum)
+ enum)
(is a
bottom)
@@ -21,14 +21,14 @@
(def: .public (between enum bottom top)
(All (_ a) (-> (Enum a) a a (Interval a)))
(implementation
- (def: &enum enum)
+ (def: enum enum)
(def: bottom bottom)
(def: top top)))
(def: .public (singleton enum elem)
(All (_ a) (-> (Enum a) a (Interval a)))
(implementation
- (def: &enum enum)
+ (def: enum enum)
(def: bottom elem)
(def: top elem)))
@@ -38,7 +38,7 @@
(let [(open ",#[0]") interval]
(<comp> ,#bottom ,#top)))]
- [inner? (order.> ,#&order)]
+ [inner? (order.> ,#order)]
[outer? ,#<]
[singleton? ,#=]
)
@@ -47,12 +47,12 @@
(All (_ a) (-> (Interval a) a Bit))
(let [(open ",#[0]") interval]
(cond (inner? interval)
- (and (order.>= ,#&order ,#bottom elem)
- (order.<= ,#&order ,#top elem))
+ (and (order.>= ,#order ,#bottom elem)
+ (order.<= ,#order ,#top elem))
(outer? interval)
- (or (order.>= ,#&order ,#bottom elem)
- (order.<= ,#&order ,#top elem))
+ (or (order.>= ,#order ,#bottom elem)
+ (order.<= ,#order ,#top elem))
... singleton
(and (,#= ,#bottom elem)
@@ -76,21 +76,21 @@
(implementation: .public (union left right)
(All (_ a) (-> (Interval a) (Interval a) (Interval a)))
- (def: &enum (the &enum right))
- (def: bottom (order.min (# right &order) (# left bottom) (# right bottom)))
- (def: top (order.max (# right &order) (# left top) (# right top))))
+ (def: enum (the enum right))
+ (def: bottom (order.min (# right order) (# left bottom) (# right bottom)))
+ (def: top (order.max (# right order) (# left top) (# right top))))
(implementation: .public (intersection left right)
(All (_ a) (-> (Interval a) (Interval a) (Interval a)))
- (def: &enum (the &enum right))
- (def: bottom (order.max (# right &order) (# left bottom) (# right bottom)))
- (def: top (order.min (# right &order) (# left top) (# right top))))
+ (def: enum (the enum right))
+ (def: bottom (order.max (# right order) (# left bottom) (# right bottom)))
+ (def: top (order.min (# right order) (# left top) (# right top))))
(implementation: .public (complement interval)
(All (_ a) (-> (Interval a) (Interval a)))
- (def: &enum (the &enum interval))
+ (def: enum (the enum interval))
(def: bottom (# interval succ (# interval top)))
(def: top (# interval pred (# interval bottom))))
@@ -113,7 +113,7 @@
(<comp> reference ,#top))))]
[before? ,#<]
- [after? (order.> ,#&order)]
+ [after? (order.> ,#order)]
)
(def: .public (meets? reference sample)
@@ -121,7 +121,7 @@
(let [(open ",#[0]") reference
limit (# reference bottom)]
(and (,#= limit (# sample top))
- (order.<= ,#&order limit (# sample bottom)))))
+ (order.<= ,#order limit (# sample bottom)))))
(def: .public (touches? reference sample)
(All (_ a) (-> (Interval a) (Interval a) Bit))
@@ -134,7 +134,7 @@
(let [(open ",#[0]") reference]
(and (,#= (# reference <eq_side>)
(# sample <eq_side>))
- (<ineq> ,#&order
+ (<ineq> ,#order
(# reference <ineq_side>)
(# sample <ineq_side>)))))]
@@ -156,8 +156,8 @@
(and (inner? reference) (inner? sample))
(and (outer? reference) (outer? sample)))
(let [(open ",#[0]") reference]
- (and (order.>= ,#&order (# reference bottom) (# sample bottom))
- (order.<= ,#&order (# reference top) (# sample top))))
+ (and (order.>= ,#order (# reference bottom) (# sample bottom))
+ (order.<= ,#order (# reference top) (# sample top))))
(or (singleton? reference)
(and (inner? reference) (outer? sample)))
@@ -165,10 +165,10 @@
... (and (outer? reference) (inner? sample))
(let [(open ",#[0]") reference]
- (or (and (order.>= ,#&order (# reference bottom) (# sample bottom))
- (order.> ,#&order (# reference bottom) (# sample top)))
+ (or (and (order.>= ,#order (# reference bottom) (# sample bottom))
+ (order.> ,#order (# reference bottom) (# sample top)))
(and (,#< (# reference top) (# sample bottom))
- (order.<= ,#&order (# reference top) (# sample top)))))
+ (order.<= ,#order (# reference top) (# sample top)))))
))
(def: .public (overlaps? reference sample)
@@ -183,8 +183,8 @@
(or (and (inner? sample) (outer? reference))
(and (outer? sample) (inner? reference)))
- (or (order.>= ,#&order (# reference bottom) (# sample top))
- (order.<= ,#&order (# reference top) (# sample bottom)))
+ (or (order.>= ,#order (# reference bottom) (# sample top))
+ (order.<= ,#order (# reference top) (# sample bottom)))
... both inner
(inner? sample)
diff --git a/stdlib/source/library/lux/abstract/monad.lux b/stdlib/source/library/lux/abstract/monad.lux
index e5268e354..79152d481 100644
--- a/stdlib/source/library/lux/abstract/monad.lux
+++ b/stdlib/source/library/lux/abstract/monad.lux
@@ -46,7 +46,7 @@
(type: .public (Monad m)
(Interface
(is (Functor m)
- &functor)
+ functor)
(is (All (_ a)
(-> a (m a)))
in)
diff --git a/stdlib/source/library/lux/abstract/monad/free.lux b/stdlib/source/library/lux/abstract/monad/free.lux
index 5bb00f5db..bd250ef05 100644
--- a/stdlib/source/library/lux/abstract/monad/free.lux
+++ b/stdlib/source/library/lux/abstract/monad/free.lux
@@ -1,10 +1,10 @@
(.using
- [library
- [lux "*"]]
- [///
- [functor {"+" Functor}]
- [apply {"+" Apply}]
- [monad {"+" Monad}]])
+ [library
+ [lux "*"]]
+ [///
+ [functor {"+" Functor}]
+ [apply {"+" Apply}]
+ [monad {"+" Monad}]])
(type: .public (Free F a)
(Variant
@@ -25,7 +25,7 @@
(implementation: .public (apply dsl)
(All (_ F) (-> (Functor F) (Apply (Free F))))
- (def: &functor
+ (def: functor
(..functor dsl))
(def: (on ea ef)
@@ -45,7 +45,7 @@
(implementation: .public (monad dsl)
(All (_ F) (-> (Functor F) (Monad (Free F))))
- (def: &functor (..functor dsl))
+ (def: functor (..functor dsl))
(def: (in a)
{#Pure a})
diff --git a/stdlib/source/library/lux/abstract/order.lux b/stdlib/source/library/lux/abstract/order.lux
index e09899ad5..2370a508a 100644
--- a/stdlib/source/library/lux/abstract/order.lux
+++ b/stdlib/source/library/lux/abstract/order.lux
@@ -11,7 +11,7 @@
(type: .public (Order a)
(Interface
(is (Equivalence a)
- &equivalence)
+ equivalence)
(is (-> a a Bit)
<)))
@@ -49,8 +49,8 @@
(def: (each f order)
(implementation
- (def: &equivalence
- (# equivalence.functor each f (# order &equivalence)))
+ (def: equivalence
+ (# equivalence.functor each f (# order equivalence)))
(def: (< reference sample)
(# order < (f reference) (f sample))))))
diff --git a/stdlib/source/library/lux/control/concurrency/async.lux b/stdlib/source/library/lux/control/concurrency/async.lux
index e8edda452..82184402f 100644
--- a/stdlib/source/library/lux/control/concurrency/async.lux
+++ b/stdlib/source/library/lux/control/concurrency/async.lux
@@ -115,7 +115,7 @@
(implementation: .public apply
(Apply Async)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(let [[fb resolve] (sharing [a b]
@@ -133,7 +133,7 @@
(implementation: .public monad
(Monad Async)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: in ..resolved)
diff --git a/stdlib/source/library/lux/control/concurrency/frp.lux b/stdlib/source/library/lux/control/concurrency/frp.lux
index 92aab2a89..ee7054786 100644
--- a/stdlib/source/library/lux/control/concurrency/frp.lux
+++ b/stdlib/source/library/lux/control/concurrency/frp.lux
@@ -103,7 +103,7 @@
(implementation: .public apply
(Apply Channel)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(do async.monad
@@ -124,7 +124,7 @@
(implementation: .public monad
(Monad Channel)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in a)
(async.resolved {.#Some [(variance.write a) ..empty]}))
diff --git a/stdlib/source/library/lux/control/concurrency/stm.lux b/stdlib/source/library/lux/control/concurrency/stm.lux
index 918283f70..0e4c75e6e 100644
--- a/stdlib/source/library/lux/control/concurrency/stm.lux
+++ b/stdlib/source/library/lux/control/concurrency/stm.lux
@@ -169,7 +169,7 @@
(implementation: .public apply
(Apply STM)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(function (_ tx)
@@ -180,7 +180,7 @@
(implementation: .public monad
(Monad STM)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in a)
(function (_ tx)
diff --git a/stdlib/source/library/lux/control/continuation.lux b/stdlib/source/library/lux/control/continuation.lux
index ba6b618de..2f67178bf 100644
--- a/stdlib/source/library/lux/control/continuation.lux
+++ b/stdlib/source/library/lux/control/continuation.lux
@@ -1,17 +1,17 @@
(.using
- [library
- [lux "*"
- [abstract
- [functor {"+" Functor}]
- [apply {"+" Apply}]
- [monad {"+" Monad do}]]
- [control
- ["[0]" function]
- [parser
- ["<[0]>" code]]]
- [macro {"+" with_symbols}
- [syntax {"+" syntax:}]
- ["[0]" code]]]])
+ [library
+ [lux "*"
+ [abstract
+ [functor {"+" Functor}]
+ [apply {"+" Apply}]
+ [monad {"+" Monad do}]]
+ [control
+ ["[0]" function]
+ [parser
+ ["<[0]>" code]]]
+ [macro {"+" with_symbols}
+ [syntax {"+" syntax:}]
+ ["[0]" code]]]])
(type: .public (Cont i o)
(-> (-> i o) o))
@@ -61,7 +61,7 @@
(implementation: .public apply
(All (_ o) (Apply (All (_ i) (Cont i o))))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fv ff)
(function (_ k)
@@ -72,7 +72,7 @@
(implementation: .public monad
(All (_ o) (Monad (All (_ i) (Cont i o))))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in value)
(function (_ k) (k value)))
diff --git a/stdlib/source/library/lux/control/function/mutual.lux b/stdlib/source/library/lux/control/function/mutual.lux
index 69f1bdf40..1c75c9f07 100644
--- a/stdlib/source/library/lux/control/function/mutual.lux
+++ b/stdlib/source/library/lux/control/function/mutual.lux
@@ -136,22 +136,22 @@
(..macro g!context g!name)])
(list.zipped_2 hidden_names
functions)))]
- (in (list& (` (.def: (~ g!context)
- [(~+ (list#each (the [#mutual #type]) functions))]
- (.let [(~ g!context) (is (Rec (~ g!context)
- [(~+ context_types)])
- [(~+ definitions)])
- [(~+ user_names)] (~ g!context)]
- [(~+ (list#each (function (_ g!name)
- (` ((~ g!name) (~ g!context))))
- user_names))])))
- g!pop
- (list#each (function (_ mutual)
- (.let [g!name (|> mutual (the [#mutual #declaration declaration.#name]) code.local)]
- (` (.def:
- (~ (the #export_policy mutual))
- (~ g!name)
- (~ (the [#mutual #type] mutual))
- (.let [[(~+ user_names)] (~ g!context)]
- (~ g!name))))))
- functions)))))))
+ (in (partial_list (` (.def: (~ g!context)
+ [(~+ (list#each (the [#mutual #type]) functions))]
+ (.let [(~ g!context) (is (Rec (~ g!context)
+ [(~+ context_types)])
+ [(~+ definitions)])
+ [(~+ user_names)] (~ g!context)]
+ [(~+ (list#each (function (_ g!name)
+ (` ((~ g!name) (~ g!context))))
+ user_names))])))
+ g!pop
+ (list#each (function (_ mutual)
+ (.let [g!name (|> mutual (the [#mutual #declaration declaration.#name]) code.local)]
+ (` (.def:
+ (~ (the #export_policy mutual))
+ (~ g!name)
+ (~ (the [#mutual #type] mutual))
+ (.let [[(~+ user_names)] (~ g!context)]
+ (~ g!name))))))
+ functions)))))))
diff --git a/stdlib/source/library/lux/control/io.lux b/stdlib/source/library/lux/control/io.lux
index 3edf5e3ee..9ea2818d3 100644
--- a/stdlib/source/library/lux/control/io.lux
+++ b/stdlib/source/library/lux/control/io.lux
@@ -49,7 +49,7 @@
(implementation: .public apply
(Apply IO)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(!io ((..run!' ff) (..run!' fa)))))
@@ -57,7 +57,7 @@
(implementation: .public monad
(Monad IO)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: in
(|>> !io))
diff --git a/stdlib/source/library/lux/control/lazy.lux b/stdlib/source/library/lux/control/lazy.lux
index 27131e570..4d13538c0 100644
--- a/stdlib/source/library/lux/control/lazy.lux
+++ b/stdlib/source/library/lux/control/lazy.lux
@@ -63,13 +63,13 @@
(implementation: .public apply
(Apply Lazy)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(lazy ((value ff) (value fa)))))
(implementation: .public monad
(Monad Lazy)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: in (|>> lazy))
(def: conjoint ..value))
diff --git a/stdlib/source/library/lux/control/maybe.lux b/stdlib/source/library/lux/control/maybe.lux
index d9c15e307..ecf814d21 100644
--- a/stdlib/source/library/lux/control/maybe.lux
+++ b/stdlib/source/library/lux/control/maybe.lux
@@ -44,7 +44,7 @@
(implementation: .public apply
(Apply Maybe)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(case [ff fa]
@@ -57,7 +57,7 @@
(implementation: .public monad
(Monad Maybe)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in x)
{.#Some x})
@@ -88,8 +88,8 @@
(implementation: .public (hash super)
(All (_ a) (-> (Hash a) (Hash (Maybe a))))
- (def: &equivalence
- (..equivalence (# super &equivalence)))
+ (def: equivalence
+ (..equivalence (# super equivalence)))
(def: (hash value)
(case value
@@ -102,8 +102,8 @@
(implementation: .public (with monad)
(All (_ M) (-> (Monad M) (Monad (All (_ a) (M (Maybe a))))))
- (def: &functor
- (functor.composite (the monad.&functor monad)
+ (def: functor
+ (functor.composite (the monad.functor monad)
..functor))
(def: in
diff --git a/stdlib/source/library/lux/control/parser.lux b/stdlib/source/library/lux/control/parser.lux
index 2b189b912..4b9735560 100644
--- a/stdlib/source/library/lux/control/parser.lux
+++ b/stdlib/source/library/lux/control/parser.lux
@@ -1,20 +1,20 @@
(.using
- [library
- [lux {"-" or and not}
- [abstract
- [functor {"+" Functor}]
- [apply {"+" Apply}]
- [monad {"+" Monad do}]
- [codec {"+" Codec}]]
- [control
- ["[0]" try {"+" Try}]]
- [data
- ["[0]" product]
- [collection
- ["[0]" list ("[1]#[0]" functor monoid)]]]
- [math
- [number
- ["n" nat]]]]])
+ [library
+ [lux {"-" or and not}
+ [abstract
+ [functor {"+" Functor}]
+ [apply {"+" Apply}]
+ [monad {"+" Monad do}]
+ [codec {"+" Codec}]]
+ [control
+ ["[0]" try {"+" Try}]]
+ [data
+ ["[0]" product]
+ [collection
+ ["[0]" list ("[1]#[0]" functor monoid)]]]
+ [math
+ [number
+ ["n" nat]]]]])
(type: .public (Parser s a)
(-> s (Try [s a])))
@@ -34,7 +34,7 @@
(implementation: .public apply
(All (_ s) (Apply (Parser s)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(function (_ input)
@@ -53,7 +53,7 @@
(implementation: .public monad
(All (_ s) (Monad (Parser s)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in x)
(function (_ input)
@@ -134,7 +134,7 @@
{try.#Success [input (list)]}
{try.#Success [input' head]}
- (..result (# ..monad each (|>> (list& head))
+ (..result (# ..monad each (|>> (partial_list head))
(some parser))
input'))))
diff --git a/stdlib/source/library/lux/control/parser/analysis.lux b/stdlib/source/library/lux/control/parser/analysis.lux
index 078fedb7e..26d74c274 100644
--- a/stdlib/source/library/lux/control/parser/analysis.lux
+++ b/stdlib/source/library/lux/control/parser/analysis.lux
@@ -93,7 +93,7 @@
(Parser <type>)
(function (_ input)
(case input
- (pattern (list& (<tag> x) input'))
+ (pattern (partial_list (<tag> x) input'))
{try.#Success [input' x]}
_
@@ -103,7 +103,7 @@
(-> <type> (Parser Any))
(function (_ input)
(case input
- (pattern (list& (<tag> actual) input'))
+ (pattern (partial_list (<tag> actual) input'))
(if (# <eq> = expected actual)
{try.#Success [input' []]}
(exception.except ..cannot_parse input))
@@ -126,7 +126,7 @@
(All (_ a) (-> (Parser a) (Parser a)))
(function (_ input)
(case input
- (pattern (list& (/.tuple head) tail))
+ (pattern (partial_list (/.tuple head) tail))
(do try.monad
[output (..result parser head)]
{try.#Success [tail output]})
diff --git a/stdlib/source/library/lux/control/parser/code.lux b/stdlib/source/library/lux/control/parser/code.lux
index 554ad21e9..516e6ff2e 100644
--- a/stdlib/source/library/lux/control/parser/code.lux
+++ b/stdlib/source/library/lux/control/parser/code.lux
@@ -26,7 +26,7 @@
(All (_ a) (-> (List [a a]) (List a)))
(case pairs
{.#End} {.#End}
- {.#Item [[x y] pairs']} (list& x y (un_paired pairs'))))
+ {.#Item [[x y] pairs']} (partial_list x y (un_paired pairs'))))
(type: .public Parser
(//.Parser (List Code)))
diff --git a/stdlib/source/library/lux/control/parser/json.lux b/stdlib/source/library/lux/control/parser/json.lux
index 130c04815..4064ed450 100644
--- a/stdlib/source/library/lux/control/parser/json.lux
+++ b/stdlib/source/library/lux/control/parser/json.lux
@@ -169,7 +169,7 @@
(All (_ a) (-> Text (Parser a) (Parser a)))
(function (again inputs)
(case inputs
- (pattern (list& {/.#String key} value inputs'))
+ (pattern (partial_list {/.#String key} value inputs'))
(if (text#= key field_name)
(case (//.result parser (list value))
{try.#Success [{.#End} output]}
@@ -182,7 +182,7 @@
{try.#Failure error})
(do try.monad
[[inputs'' output] (again inputs')]
- (in [(list& {/.#String key} value inputs'')
+ (in [(partial_list {/.#String key} value inputs'')
output])))
{.#End}
diff --git a/stdlib/source/library/lux/control/parser/synthesis.lux b/stdlib/source/library/lux/control/parser/synthesis.lux
index e45f311da..f457e13fb 100644
--- a/stdlib/source/library/lux/control/parser/synthesis.lux
+++ b/stdlib/source/library/lux/control/parser/synthesis.lux
@@ -92,7 +92,7 @@
(Parser <type>)
(.function (_ input)
(case input
- (pattern (list& (<tag> x) input'))
+ (pattern (partial_list (<tag> x) input'))
{try.#Success [input' x]}
_
@@ -102,7 +102,7 @@
(-> <type> (Parser Any))
(.function (_ input)
(case input
- (pattern (list& (<tag> actual) input'))
+ (pattern (partial_list (<tag> actual) input'))
(if (# <eq> = expected actual)
{try.#Success [input' []]}
(exception.except ..cannot_parse input))
@@ -123,7 +123,7 @@
(All (_ a) (-> (Parser a) (Parser a)))
(.function (_ input)
(case input
- (pattern (list& (/.tuple head) tail))
+ (pattern (partial_list (/.tuple head) tail))
(do try.monad
[output (..result parser head)]
{try.#Success [tail output]})
@@ -135,7 +135,7 @@
(All (_ a) (-> Arity (Parser a) (Parser [(Environment Synthesis) a])))
(.function (_ input)
(case input
- (pattern (list& (/.function/abstraction [environment actual body]) tail))
+ (pattern (partial_list (/.function/abstraction [environment actual body]) tail))
(if (n.= expected actual)
(do try.monad
[output (..result parser (list body))]
@@ -149,7 +149,7 @@
(All (_ a b) (-> (Parser a) (Parser b) (Parser [Register a b])))
(.function (_ input)
(case input
- (pattern (list& (/.loop/scope [start inits iteration]) tail))
+ (pattern (partial_list (/.loop/scope [start inits iteration]) tail))
(do try.monad
[inits (..result init_parsers inits)
iteration (..result iteration_parser (list iteration))]
diff --git a/stdlib/source/library/lux/control/parser/type.lux b/stdlib/source/library/lux/control/parser/type.lux
index 714810217..3b837d8a9 100644
--- a/stdlib/source/library/lux/control/parser/type.lux
+++ b/stdlib/source/library/lux/control/parser/type.lux
@@ -342,7 +342,7 @@
[env ..env
[funcT argsT] (..applied (//.and any (//.many any)))
_ (local (list funcT) (..this_parameter 0))
- allC (let [allT (list& funcT argsT)]
+ allC (let [allT (partial_list funcT argsT)]
(|> allT
(monad.each ! (function.constant ..parameter))
(local allT)))]
diff --git a/stdlib/source/library/lux/control/pipe.lux b/stdlib/source/library/lux/control/pipe.lux
index 3b136f771..476664344 100644
--- a/stdlib/source/library/lux/control/pipe.lux
+++ b/stdlib/source/library/lux/control/pipe.lux
@@ -81,7 +81,7 @@
prev <code>.any])
(with_symbols [g!temp]
(.case (list.reversed steps)
- (pattern (list& last_step prev_steps))
+ (pattern (partial_list last_step prev_steps))
(.let [step_bindings (monad.do list.monad
[step (list.reversed prev_steps)]
(list g!temp (` (|> (~ g!temp) (~+ step)))))]
diff --git a/stdlib/source/library/lux/control/reader.lux b/stdlib/source/library/lux/control/reader.lux
index 6a81806ac..95cbe91b9 100644
--- a/stdlib/source/library/lux/control/reader.lux
+++ b/stdlib/source/library/lux/control/reader.lux
@@ -32,7 +32,7 @@
(implementation: .public apply
(All (_ r) (Apply (Reader r)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(function (_ env)
@@ -41,7 +41,7 @@
(implementation: .public monad
(All (_ r) (Monad (Reader r)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in x)
(function (_ env) x))
@@ -53,8 +53,8 @@
(implementation: .public (with monad)
(All (_ !) (-> (Monad !) (All (_ e) (Monad (All (_ a) (Reader e (! a)))))))
- (def: &functor
- (functor.composite ..functor (the monad.&functor monad)))
+ (def: functor
+ (functor.composite ..functor (the monad.functor monad)))
(def: in
(|>> (# monad in)
diff --git a/stdlib/source/library/lux/control/region.lux b/stdlib/source/library/lux/control/region.lux
index 0aa7d8939..2296de83f 100644
--- a/stdlib/source/library/lux/control/region.lux
+++ b/stdlib/source/library/lux/control/region.lux
@@ -92,8 +92,8 @@
(-> (Monad !)
(All (_ r) (Apply (Region r !)))))
- (def: &functor
- (..functor (the monad.&functor super)))
+ (def: functor
+ (..functor (the monad.functor super)))
(def: (on fa ff)
(function (_ [region cleaners])
@@ -117,8 +117,8 @@
(-> (Monad !)
(All (_ r) (Monad (Region r !)))))
- (def: &functor
- (..functor (the monad.&functor super)))
+ (def: functor
+ (..functor (the monad.functor super)))
(def: (in value)
(function (_ [region cleaners])
diff --git a/stdlib/source/library/lux/control/security/policy.lux b/stdlib/source/library/lux/control/security/policy.lux
index d3165f0c6..3e6bb2e0c 100644
--- a/stdlib/source/library/lux/control/security/policy.lux
+++ b/stdlib/source/library/lux/control/security/policy.lux
@@ -63,7 +63,7 @@
(implementation: .public apply
(~ (..of_policy Apply))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(abstraction ((representation ff) (representation fa)))))
@@ -71,7 +71,7 @@
(implementation: .public monad
(~ (..of_policy Monad))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: in (|>> abstraction))
(def: conjoint (|>> representation)))
)
diff --git a/stdlib/source/library/lux/control/state.lux b/stdlib/source/library/lux/control/state.lux
index fdc247660..d1d587861 100644
--- a/stdlib/source/library/lux/control/state.lux
+++ b/stdlib/source/library/lux/control/state.lux
@@ -1,10 +1,10 @@
(.using
- [library
- [lux {"-" local}
- [abstract
- [functor {"+" Functor}]
- [apply {"+" Apply}]
- [monad {"+" Monad do}]]]])
+ [library
+ [lux {"-" local}
+ [abstract
+ [functor {"+" Functor}]
+ [apply {"+" Apply}]
+ [monad {"+" Monad do}]]]])
(type: .public (State s a)
(-> s [s a]))
@@ -50,7 +50,7 @@
(implementation: .public apply
(All (_ s) (Apply (State s)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(function (_ state)
@@ -61,7 +61,7 @@
(implementation: .public monad
(All (_ s) (Monad (State s)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in a)
(function (_ state)
@@ -99,7 +99,7 @@
(implementation: (with//apply monad)
(All (_ M s) (-> (Monad M) (Apply (All (_ a) (-> s (M [s a]))))))
- (def: &functor (with//functor (# monad &functor)))
+ (def: functor (with//functor (# monad functor)))
(def: (on sFa sFf)
(function (_ state)
@@ -118,7 +118,7 @@
(implementation: .public (with monad)
(All (_ M s) (-> (Monad M) (Monad (+State M s))))
- (def: &functor (with//functor (# monad &functor)))
+ (def: functor (with//functor (# monad functor)))
(def: (in a)
(function (_ state)
diff --git a/stdlib/source/library/lux/control/thread.lux b/stdlib/source/library/lux/control/thread.lux
index 6a65b2650..2192c1824 100644
--- a/stdlib/source/library/lux/control/thread.lux
+++ b/stdlib/source/library/lux/control/thread.lux
@@ -75,7 +75,7 @@
(implementation: .public apply
(All (_ !) (Apply (Thread !)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(function (_ !)
@@ -84,7 +84,7 @@
(implementation: .public monad
(All (_ !) (Monad (Thread !)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in value)
(function (_ !)
diff --git a/stdlib/source/library/lux/control/try.lux b/stdlib/source/library/lux/control/try.lux
index d00d15d28..b2c5b02fc 100644
--- a/stdlib/source/library/lux/control/try.lux
+++ b/stdlib/source/library/lux/control/try.lux
@@ -30,7 +30,7 @@
(implementation: .public apply
(Apply Try)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(case ff
@@ -50,7 +50,7 @@
(implementation: .public monad
(Monad Try)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in a)
{#Success a})
@@ -68,8 +68,8 @@
... TODO: Replace (All (_ a) (! (Try a))) with (functor.Then ! Try)
(All (_ !) (-> (Monad !) (Monad (All (_ a) (! (Try a))))))
- (def: &functor
- (functor.composite (the monad.&functor monad)
+ (def: functor
+ (functor.composite (the monad.functor monad)
..functor))
(def: in
diff --git a/stdlib/source/library/lux/control/writer.lux b/stdlib/source/library/lux/control/writer.lux
index bfbf6183e..b8326b542 100644
--- a/stdlib/source/library/lux/control/writer.lux
+++ b/stdlib/source/library/lux/control/writer.lux
@@ -29,7 +29,7 @@
(All (_ l)
(-> (Monoid l) (Apply (Writer l))))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(let [[log1 f] ff
@@ -40,7 +40,7 @@
(All (_ l)
(-> (Monoid l) (Monad (Writer l))))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: in
(|>> [(# monoid identity)]))
@@ -52,8 +52,8 @@
(implementation: .public (with monoid monad)
(All (_ l M) (-> (Monoid l) (Monad M) (Monad (All (_ a) (M (Writer l a))))))
- (def: &functor
- (functor.composite (the monad.&functor monad)
+ (def: functor
+ (functor.composite (the monad.functor monad)
..functor))
(def: in
diff --git a/stdlib/source/library/lux/data/bit.lux b/stdlib/source/library/lux/data/bit.lux
index bef99619e..266d8b8b0 100644
--- a/stdlib/source/library/lux/data/bit.lux
+++ b/stdlib/source/library/lux/data/bit.lux
@@ -1,13 +1,13 @@
(.using
- [library
- [lux "*"
- [abstract
- [monoid {"+" Monoid}]
- [equivalence {"+" Equivalence}]
- [hash {"+" Hash}]
- [codec {"+" Codec}]]
- [control
- ["[0]" function]]]])
+ [library
+ [lux "*"
+ [abstract
+ [monoid {"+" Monoid}]
+ [equivalence {"+" Equivalence}]
+ [hash {"+" Hash}]
+ [codec {"+" Codec}]]
+ [control
+ ["[0]" function]]]])
(template [<zero> <one>]
[(def: .public <zero> Bit #0)
@@ -28,7 +28,7 @@
(implementation: .public hash
(Hash Bit)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (hash value)
(case value
diff --git a/stdlib/source/library/lux/data/collection/dictionary/ordered.lux b/stdlib/source/library/lux/data/collection/dictionary/ordered.lux
index b9226a891..e099a841b 100644
--- a/stdlib/source/library/lux/data/collection/dictionary/ordered.lux
+++ b/stdlib/source/library/lux/data/collection/dictionary/ordered.lux
@@ -48,19 +48,19 @@
(type: .public (Dictionary k v)
(Record
- [#&order (Order k)
+ [#order (Order k)
#root (Maybe (Node k v))]))
(def: .public (empty order)
(All (_ k v) (-> (Order k) (Dictionary k v)))
- [#&order order
+ [#order order
#root {.#None}])
... TODO: Doing inneficient access of Order functions due to compiler bug.
... TODO: Must improve it as soon as bug is fixed.
(def: .public (value key dict)
(All (_ k v) (-> k (Dictionary k v) (Maybe v)))
- (let [... (open "_#[0]") (the #&order dict)
+ (let [... (open "_#[0]") (the #order dict)
]
(loop (again [node (the #root dict)])
(case node
@@ -85,7 +85,7 @@
... TODO: Must improve it as soon as bug is fixed.
(def: .public (key? dict key)
(All (_ k v) (-> (Dictionary k v) k Bit))
- (let [... (open "_#[0]") (the #&order dict)
+ (let [... (open "_#[0]") (the #order dict)
]
(loop (again [node (the #root dict)])
(case node
@@ -251,7 +251,7 @@
(def: .public (has key value dict)
(All (_ k v) (-> k v (Dictionary k v) (Dictionary k v)))
- (let [(open "_#[0]") (the #&order dict)
+ (let [(open "_#[0]") (the #order dict)
root' (loop (again [?root (the #root dict)])
(case ?root
{.#None}
@@ -269,7 +269,7 @@
root)}))]
[_#< #left ..with_left]
- [(order.> (the #&order dict)) #right ..with_right]
+ [(order.> (the #order dict)) #right ..with_right]
))
... (_#= reference key)
@@ -474,7 +474,7 @@
(def: .public (lacks key dict)
(All (_ k v) (-> k (Dictionary k v) (Dictionary k v)))
- (let [(open "_#[0]") (the #&order dict)
+ (let [(open "_#[0]") (the #order dict)
[?root found?] (loop (again [?root (the #root dict)])
(case ?root
{.#Some root}
@@ -566,7 +566,7 @@
(All (_ k v) (-> (Equivalence v) (Equivalence (Dictionary k v))))
(def: (= reference sample)
- (let [(open "/#[0]") (the #&order reference)]
+ (let [(open "/#[0]") (the #order reference)]
(loop (again [entriesR (entries reference)
entriesS (entries sample)])
(case [entriesR entriesS]
diff --git a/stdlib/source/library/lux/data/collection/list.lux b/stdlib/source/library/lux/data/collection/list.lux
index 48b6e45a1..e0f68faa3 100644
--- a/stdlib/source/library/lux/data/collection/list.lux
+++ b/stdlib/source/library/lux/data/collection/list.lux
@@ -78,10 +78,10 @@
(def: .public (pairs xs)
(All (_ a) (-> (List a) (Maybe (List [a a]))))
(case xs
- (pattern (list& x1 x2 xs'))
+ (pattern (partial_list x1 x2 xs'))
(case (pairs xs')
{.#Some tail}
- {.#Some (list& [x1 x2] tail)}
+ {.#Some (partial_list [x1 x2] tail)}
{.#None}
{.#None})
@@ -255,7 +255,7 @@
xs
{.#Item x xs'}
- (list& x sep (interposed sep xs'))))
+ (partial_list x sep (interposed sep xs'))))
(def: .public (size list)
(All (_ a) (-> (List a) Nat))
@@ -308,8 +308,8 @@
(implementation: .public (hash super)
(All (_ a) (-> (Hash a) (Hash (List a))))
- (def: &equivalence
- (..equivalence (# super &equivalence)))
+ (def: equivalence
+ (..equivalence (# super equivalence)))
(def: hash
(# ..mix mix
@@ -348,7 +348,7 @@
(implementation: .public apply
(Apply List)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(case ff
@@ -363,7 +363,7 @@
(implementation: .public monad
(Monad List)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in a)
{.#Item a {.#End}})
@@ -574,8 +574,8 @@
(implementation: .public (with monad)
(All (_ M) (-> (Monad M) (Monad (All (_ a) (M (List a))))))
- (def: &functor
- (functor.composite (the monad.&functor monad)
+ (def: functor
+ (functor.composite (the monad.functor monad)
..functor))
(def: in
diff --git a/stdlib/source/library/lux/data/collection/queue.lux b/stdlib/source/library/lux/data/collection/queue.lux
index c9106c1c4..f5f35402c 100644
--- a/stdlib/source/library/lux/data/collection/queue.lux
+++ b/stdlib/source/library/lux/data/collection/queue.lux
@@ -65,7 +65,7 @@
(has #rear (.list)))
... Consume front!
- (pattern (.list& _ front'))
+ (pattern (.partial_list _ front'))
(|> queue
(has #front front'))))
diff --git a/stdlib/source/library/lux/data/collection/sequence.lux b/stdlib/source/library/lux/data/collection/sequence.lux
index f786a9276..20748c069 100644
--- a/stdlib/source/library/lux/data/collection/sequence.lux
+++ b/stdlib/source/library/lux/data/collection/sequence.lux
@@ -452,7 +452,7 @@
(implementation: .public apply
(Apply Sequence)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(let [(open "[0]") ..functor
@@ -465,7 +465,7 @@
(implementation: .public monad
(Monad Sequence)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: in
(|>> sequence))
diff --git a/stdlib/source/library/lux/data/collection/set.lux b/stdlib/source/library/lux/data/collection/set.lux
index 3507442c3..fa4604ccc 100644
--- a/stdlib/source/library/lux/data/collection/set.lux
+++ b/stdlib/source/library/lux/data/collection/set.lux
@@ -73,7 +73,7 @@
(implementation: .public hash
(All (_ a) (Hash (Set a)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (hash set)
(|> set
diff --git a/stdlib/source/library/lux/data/collection/set/multi.lux b/stdlib/source/library/lux/data/collection/set/multi.lux
index 2043075cf..bdb423f0e 100644
--- a/stdlib/source/library/lux/data/collection/set/multi.lux
+++ b/stdlib/source/library/lux/data/collection/set/multi.lux
@@ -127,7 +127,7 @@
(implementation: .public hash
(All (_ a) (Hash (Set a)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (hash (abstract.pattern set))
(let [[hash _] set]
diff --git a/stdlib/source/library/lux/data/collection/set/ordered.lux b/stdlib/source/library/lux/data/collection/set/ordered.lux
index c73e4d04a..edb7c6539 100644
--- a/stdlib/source/library/lux/data/collection/set/ordered.lux
+++ b/stdlib/source/library/lux/data/collection/set/ordered.lux
@@ -46,9 +46,9 @@
(All (_ a) (-> (Set a) (List a)))
(|>> representation /.keys))
- (def: .public (of_list &order list)
+ (def: .public (of_list order list)
(All (_ a) (-> (Order a) (List a) (Set a)))
- (list#mix has (..empty &order) list))
+ (list#mix has (..empty order) list))
(def: .public (union left right)
(All (_ a) (-> (Set a) (Set a) (Set a)))
@@ -58,19 +58,19 @@
(All (_ a) (-> (Set a) (Set a) (Set a)))
(|> (..list right)
(list.only (..member? left))
- (..of_list (the /.#&order (representation right)))))
+ (..of_list (the /.#order (representation right)))))
(def: .public (difference param subject)
(All (_ a) (-> (Set a) (Set a) (Set a)))
(|> (..list subject)
(list.only (|>> (..member? param) not))
- (..of_list (the /.#&order (representation subject)))))
+ (..of_list (the /.#order (representation subject)))))
(implementation: .public equivalence
(All (_ a) (Equivalence (Set a)))
(def: (= reference sample)
- (# (list.equivalence (# (representation reference) &equivalence))
+ (# (list.equivalence (# (representation reference) equivalence))
= (..list reference) (..list sample))))
)
diff --git a/stdlib/source/library/lux/data/collection/stream.lux b/stdlib/source/library/lux/data/collection/stream.lux
index 672fa8f72..495b26afa 100644
--- a/stdlib/source/library/lux/data/collection/stream.lux
+++ b/stdlib/source/library/lux/data/collection/stream.lux
@@ -68,7 +68,7 @@
(-> <pred_type> (Stream a) (List a)))
(let [[x xs'] (//.result xs)]
(if (<post_test> <pred_test>)
- (list& x (<taker> <pred_step> xs'))
+ (partial_list x (<taker> <pred_step> xs'))
(list))))
(def: .public (<dropper> pred xs)
@@ -119,7 +119,7 @@
(implementation: .public comonad
(CoMonad Stream)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: out head)
@@ -137,4 +137,4 @@
(` ((~! //.result) (~ g!stream))))))
list#conjoint))]
(~ body)))]
- (in (list& g!stream body+ branches)))))
+ (in (partial_list g!stream body+ branches)))))
diff --git a/stdlib/source/library/lux/data/collection/tree/zipper.lux b/stdlib/source/library/lux/data/collection/tree/zipper.lux
index 4f9889f9c..e45697595 100644
--- a/stdlib/source/library/lux/data/collection/tree/zipper.lux
+++ b/stdlib/source/library/lux/data/collection/tree/zipper.lux
@@ -303,7 +303,7 @@
(implementation: .public comonad
(CoMonad Zipper)
- (def: &functor
+ (def: functor
..functor)
(def: out
diff --git a/stdlib/source/library/lux/data/color.lux b/stdlib/source/library/lux/data/color.lux
index c5cf003ef..dc2f0fff7 100644
--- a/stdlib/source/library/lux/data/color.lux
+++ b/stdlib/source/library/lux/data/color.lux
@@ -77,7 +77,7 @@
(implementation: .public hash
(Hash Color)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (hash value)
(let [[r g b] (representation value)]
diff --git a/stdlib/source/library/lux/data/format/css.lux b/stdlib/source/library/lux/data/format/css.lux
index dc42d50d2..4fc18ca76 100644
--- a/stdlib/source/library/lux/data/format/css.lux
+++ b/stdlib/source/library/lux/data/format/css.lux
@@ -62,12 +62,12 @@
{.#None}
(list))]
- (|> (list& ["font-family" (the /font.#family font)]
- ["src" (format "url(" (the /font.#source font) ")")]
- ["font-stretch" (|> font (the /font.#stretch) (maybe.else /value.normal_stretch) /value.value)]
- ["font-style" (|> font (the /font.#style) (maybe.else /value.normal_style) /value.value)]
- ["font-weight" (|> font (the /font.#weight) (maybe.else /value.normal_weight) /value.value)]
- with_unicode)
+ (|> (partial_list ["font-family" (the /font.#family font)]
+ ["src" (format "url(" (the /font.#source font) ")")]
+ ["font-stretch" (|> font (the /font.#stretch) (maybe.else /value.normal_stretch) /value.value)]
+ ["font-style" (|> font (the /font.#style) (maybe.else /value.normal_style) /value.value)]
+ ["font-weight" (|> font (the /font.#weight) (maybe.else /value.normal_weight) /value.value)]
+ with_unicode)
(list#each (function (_ [property value])
(format property ": " value ";")))
text.together
diff --git a/stdlib/source/library/lux/data/format/css/value.lux b/stdlib/source/library/lux/data/format/css/value.lux
index 8318ffe71..ae3a15195 100644
--- a/stdlib/source/library/lux/data/format/css/value.lux
+++ b/stdlib/source/library/lux/data/format/css/value.lux
@@ -963,9 +963,9 @@
[(def: .public (<name> angle start next)
(-> Angle Stop (List/1 [(Maybe Hint) Stop]) (Value Image))
(let [[now after] next]
- (..apply <function> (list& (representation Angle angle)
- (with_hint now)
- (list#each with_hint after)))))]
+ (..apply <function> (partial_list (representation Angle angle)
+ (with_hint now)
+ (list#each with_hint after)))))]
[linear_gradient "linear-gradient"]
[repeating_linear_gradient "repeating-linear-gradient"]
@@ -1080,9 +1080,9 @@
after_extent)
where (format (..shape shape) " " with_extent)
[now after] next]
- (..apply <function> (list& (..shape shape)
- (with_hint now)
- (list#each with_hint after)))))]
+ (..apply <function> (partial_list (..shape shape)
+ (with_hint now)
+ (list#each with_hint after)))))]
[radial_gradient "radial-gradient"]
[repeating_radial_gradient "repeating-radial-gradient"]
@@ -1096,12 +1096,12 @@
(let [with_inset (if inset?
(list "inset")
(list))]
- (|> (list& (representation horizontal)
- (representation vertical)
- (|> blur (maybe.else ..default_shadow_length) representation)
- (|> spread (maybe.else ..default_shadow_length) representation)
- (representation color)
- with_inset)
+ (|> (partial_list (representation horizontal)
+ (representation vertical)
+ (|> blur (maybe.else ..default_shadow_length) representation)
+ (|> spread (maybe.else ..default_shadow_length) representation)
+ (representation color)
+ with_inset)
(text.interposed " ")
abstraction)))
diff --git a/stdlib/source/library/lux/data/format/html.lux b/stdlib/source/library/lux/data/format/html.lux
index 96de4515b..28d3c849a 100644
--- a/stdlib/source/library/lux/data/format/html.lux
+++ b/stdlib/source/library/lux/data/format/html.lux
@@ -177,7 +177,7 @@
(let [partial (list ["href" href])
full (case target
{.#Some target}
- (list& ["target" (..target target)] partial)
+ (partial_list ["target" (..target target)] partial)
{.#None}
partial)]
@@ -261,7 +261,7 @@
(def: (%polygon [first second third extra])
(Format Polygon)
- (|> (list& first second third extra)
+ (|> (partial_list first second third extra)
(list#each %coord)
(text.interposed ..coord_separator)))
@@ -274,9 +274,9 @@
(.template [<name> <shape> <type> <format>]
[(def: (<name> attributes shape)
(-> Attributes <type> (HTML Any))
- (..simple "area" (list& ["shape" <shape>]
- ["coords" (<format> shape)]
- attributes)))]
+ (..simple "area" (partial_list ["shape" <shape>]
+ ["coords" (<format> shape)]
+ attributes)))]
[rectangle "rect" Rectangle ..%rectangle]
[circle "circle" Circle ..%circle]
@@ -337,7 +337,7 @@
(def: .public (anchor href attributes content)
(-> URL Attributes Element Element)
- (..tag "a" (list& ["href" href] attributes) content))
+ (..tag "a" (partial_list ["href" href] attributes) content))
(def: .public label
(-> ID Input)
diff --git a/stdlib/source/library/lux/data/format/tar.lux b/stdlib/source/library/lux/data/format/tar.lux
index debbba560..0069ebb85 100644
--- a/stdlib/source/library/lux/data/format/tar.lux
+++ b/stdlib/source/library/lux/data/format/tar.lux
@@ -22,7 +22,9 @@
["[1]" binary {"+" Writer} ("[1]#[0]" monoid)]]
[collection
["[0]" list ("[1]#[0]" mix)]
- ["[0]" sequence {"+" Sequence} ("[1]#[0]" mix)]]]
+ ["[0]" sequence {"+" Sequence} ("[1]#[0]" mix)]
+ [array
+ [\\unsafe {"+"}]]]]
[macro
["^" pattern]]
[math
diff --git a/stdlib/source/library/lux/data/identity.lux b/stdlib/source/library/lux/data/identity.lux
index 1d51efd0a..64f124f02 100644
--- a/stdlib/source/library/lux/data/identity.lux
+++ b/stdlib/source/library/lux/data/identity.lux
@@ -1,13 +1,13 @@
(.using
- [library
- [lux "*"
- [abstract
- [functor {"+" Functor}]
- [apply {"+" Apply}]
- [monad {"+" Monad}]
- [comonad {"+" CoMonad}]]
- [control
- ["[0]" function]]]])
+ [library
+ [lux "*"
+ [abstract
+ [functor {"+" Functor}]
+ [apply {"+" Apply}]
+ [monad {"+" Monad}]
+ [comonad {"+" CoMonad}]]
+ [control
+ ["[0]" function]]]])
(type: .public (Identity a)
a)
@@ -20,20 +20,20 @@
(implementation: .public apply
(Apply Identity)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(ff fa)))
(implementation: .public monad
(Monad Identity)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: in function.identity)
(def: conjoint function.identity))
(implementation: .public comonad
(CoMonad Identity)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: out function.identity)
(def: disjoint function.identity))
diff --git a/stdlib/source/library/lux/data/product.lux b/stdlib/source/library/lux/data/product.lux
index 1f0079131..6f4743a46 100644
--- a/stdlib/source/library/lux/data/product.lux
+++ b/stdlib/source/library/lux/data/product.lux
@@ -1,9 +1,9 @@
(.using
- [library
- [lux "*"
- [abstract
- [equivalence {"+" Equivalence}]
- [hash {"+" Hash}]]]])
+ [library
+ [lux "*"
+ [abstract
+ [equivalence {"+" Equivalence}]
+ [hash {"+" Hash}]]]])
(template [<name>]
[(def: .public (<name> [left right])
@@ -59,9 +59,9 @@
(def: .public (hash left right)
(All (_ l r) (-> (Hash l) (Hash r) (Hash [l r])))
(implementation
- (def: &equivalence
- (..equivalence (# left &equivalence)
- (# right &equivalence)))
+ (def: equivalence
+ (..equivalence (# left equivalence)
+ (# right equivalence)))
(def: (hash [leftV rightV])
("lux i64 +"
(# left hash leftV)
diff --git a/stdlib/source/library/lux/data/store.lux b/stdlib/source/library/lux/data/store.lux
index a30bdf0c4..6c0291c2a 100644
--- a/stdlib/source/library/lux/data/store.lux
+++ b/stdlib/source/library/lux/data/store.lux
@@ -28,7 +28,7 @@
(implementation: .public comonad
(All (_ s) (CoMonad (Store s)))
- (def: &functor
+ (def: functor
..functor)
(def: (out wa)
diff --git a/stdlib/source/library/lux/data/sum.lux b/stdlib/source/library/lux/data/sum.lux
index 8d3fe4fc0..c2b3d7512 100644
--- a/stdlib/source/library/lux/data/sum.lux
+++ b/stdlib/source/library/lux/data/sum.lux
@@ -78,9 +78,9 @@
(def: .public (hash left right)
(All (_ l r) (-> (Hash l) (Hash r) (Hash (Or l r))))
(implementation
- (def: &equivalence
- (..equivalence (# left &equivalence)
- (# right &equivalence)))
+ (def: equivalence
+ (..equivalence (# left equivalence)
+ (# right equivalence)))
(def: (hash value)
(.nat (case value
{.#Left value}
diff --git a/stdlib/source/library/lux/data/text.lux b/stdlib/source/library/lux/data/text.lux
index e5b2ec3ed..7f530a137 100644
--- a/stdlib/source/library/lux/data/text.lux
+++ b/stdlib/source/library/lux/data/text.lux
@@ -265,7 +265,7 @@
(implementation: .public order
(Order Text)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< reference sample)
("lux text <" reference sample)))
@@ -281,7 +281,7 @@
(implementation: .public hash
(Hash Text)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (hash input)
(for @.old
diff --git a/stdlib/source/library/lux/data/text/regex.lux b/stdlib/source/library/lux/data/text/regex.lux
index 3ae94415b..c24c0093f 100644
--- a/stdlib/source/library/lux/data/text/regex.lux
+++ b/stdlib/source/library/lux/data/text/regex.lux
@@ -295,9 +295,9 @@
{.#Right [{#Non_Capturing} complex]})
[idx
names
- (list& (list g!temp complex
- (` .let) (` [(~ g!total) (# (~! //.monoid) (~' composite) (~ g!total) (~ g!temp))]))
- steps)]
+ (partial_list (list g!temp complex
+ (` .let) (` [(~ g!total) (# (~! //.monoid) (~' composite) (~ g!total) (~ g!temp))]))
+ steps)]
{.#Right [{#Capturing [?name num_captures]} scoped]}
(let [[idx! name!] (case ?name
@@ -310,10 +310,10 @@
(` ((~! product.left) (~ name!)))
name!)]
[idx!
- (list& name! names)
- (list& (list name! scoped
- (` .let) (` [(~ g!total) (# (~! //.monoid) (~' composite) (~ g!total) (~ access))]))
- steps)])
+ (partial_list name! names)
+ (partial_list (list name! scoped
+ (` .let) (` [(~ g!total) (# (~! //.monoid) (~' composite) (~ g!total) (~ access))]))
+ steps)])
)))
[0
(is (List Code) (list))
@@ -430,8 +430,8 @@
body <code>.any
branches (<>.many <code>.any)])
(with_symbols [g!temp]
- (in (list& (` (^.multi (~ g!temp)
- [((~! <text>.result) (..regex (~ (code.text pattern))) (~ g!temp))
- {try.#Success (~ (maybe.else g!temp bindings))}]))
- body
- branches))))
+ (in (partial_list (` (^.multi (~ g!temp)
+ [((~! <text>.result) (..regex (~ (code.text pattern))) (~ g!temp))
+ {try.#Success (~ (maybe.else g!temp bindings))}]))
+ body
+ branches))))
diff --git a/stdlib/source/library/lux/data/text/unicode/block.lux b/stdlib/source/library/lux/data/text/unicode/block.lux
index d0dec884f..bb32ce2ba 100644
--- a/stdlib/source/library/lux/data/text/unicode/block.lux
+++ b/stdlib/source/library/lux/data/text/unicode/block.lux
@@ -68,7 +68,7 @@
(implementation: .public hash
(Hash Block)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (hash value)
(i64.or (i64.left_shifted 32 (..start value))
(..end value))))
diff --git a/stdlib/source/library/lux/data/trace.lux b/stdlib/source/library/lux/data/trace.lux
index 23c9fa00b..73f8dc5aa 100644
--- a/stdlib/source/library/lux/data/trace.lux
+++ b/stdlib/source/library/lux/data/trace.lux
@@ -21,7 +21,7 @@
(implementation: .public comonad
(All (_ t) (CoMonad (Trace t)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (out wa)
((the #trace wa)
diff --git a/stdlib/source/library/lux/documentation.lux b/stdlib/source/library/lux/documentation.lux
index a0aa01e82..37b462ea8 100644
--- a/stdlib/source/library/lux/documentation.lux
+++ b/stdlib/source/library/lux/documentation.lux
@@ -631,17 +631,17 @@
(do meta.monad
[expected (meta.exports name)]
(in (list (` (is (List Module)
- (list& [..#module (~ (code.text name))
- ..#description (~ description)
- ..#expected ((~! ..expected)
- (~ (code.text (|> expected
- (list#each product.left)
- ..expected_format))))
- ..#definitions ((~! list.together) (list (~+ definitions)))]
- ($_ (# (~! list.monoid) (~' composite))
- (is (List Module)
- (# (~! list.monoid) (~' identity)))
- (~+ subs)))))))))
+ (partial_list [..#module (~ (code.text name))
+ ..#description (~ description)
+ ..#expected ((~! ..expected)
+ (~ (code.text (|> expected
+ (list#each product.left)
+ ..expected_format))))
+ ..#definitions ((~! list.together) (list (~+ definitions)))]
+ ($_ (# (~! list.monoid) (~' composite))
+ (is (List Module)
+ (# (~! list.monoid) (~' identity)))
+ (~+ subs)))))))))
(def: listing
(-> (List Text) (Markdown Block))
diff --git a/stdlib/source/library/lux/ffi.jvm.lux b/stdlib/source/library/lux/ffi.jvm.lux
index 2441cf387..aff9bb6e9 100644
--- a/stdlib/source/library/lux/ffi.jvm.lux
+++ b/stdlib/source/library/lux/ffi.jvm.lux
@@ -1622,7 +1622,7 @@
(in (list (` ((~! syntax:) (~ setter_call)
((~' in) (.list (.` ((~! io.io) ((~ (code.text setter_command)) (~+ g!obj+) (~ setter_value))))))))))))
(in (list))))]
- (in (list& getter_interop setter_interop)))
+ (in (partial_list getter_interop setter_interop)))
)))
(def: (member_import$ vars kind class [import_format member])
@@ -1668,7 +1668,7 @@
=members (|> members
(list#each (|>> [import_format]))
(monad.each ! (member_import$ class_type_vars kind declaration)))]
- (in (list& (class_import$ declaration) (list#conjoint =members)))))
+ (in (partial_list (class_import$ declaration) (list#conjoint =members)))))
(syntax: .public (array [type (..type^ (list))
size <code>.any])
diff --git a/stdlib/source/library/lux/ffi.lux b/stdlib/source/library/lux/ffi.lux
index da6bd2b3b..1888db385 100644
--- a/stdlib/source/library/lux/ffi.lux
+++ b/stdlib/source/library/lux/ffi.lux
@@ -583,22 +583,22 @@
g!class_variables (list#each code.local class_parameters)
declaration (` ((~ (code.local (maybe.else class_name alias)))
(~+ g!class_variables)))]
- (in (list& (` (.type: (~ declaration)
- (..Object (.Primitive (~ (code.text (..host_path class_name)))
- [(~+ g!class_variables)]))))
- (list#each (.function (_ member)
- (`` (`` (case member
- (~~ (for @.lua (~~ (these))
- @.ruby (~~ (these))
- (~~ (these {#Constructor it}
- (..constructor_definition class alias namespace it)))))
-
- {#Field it}
- (..field_definition host_module_import! class alias namespace it)
-
- {#Method it}
- (..method_definition host_module_import! class alias namespace it)))))
- (the #members it)))))
+ (in (partial_list (` (.type: (~ declaration)
+ (..Object (.Primitive (~ (code.text (..host_path class_name)))
+ [(~+ g!class_variables)]))))
+ (list#each (.function (_ member)
+ (`` (`` (case member
+ (~~ (for @.lua (~~ (these))
+ @.ruby (~~ (these))
+ (~~ (these {#Constructor it}
+ (..constructor_definition class alias namespace it)))))
+
+ {#Field it}
+ (..field_definition host_module_import! class alias namespace it)
+
+ {#Method it}
+ (..method_definition host_module_import! class alias namespace it)))))
+ (the #members it)))))
)))
(for @.ruby (these)
diff --git a/stdlib/source/library/lux/ffi.old.lux b/stdlib/source/library/lux/ffi.old.lux
index 32844a7d7..1758cb5bc 100644
--- a/stdlib/source/library/lux/ffi.old.lux
+++ b/stdlib/source/library/lux/ffi.old.lux
@@ -1577,7 +1577,7 @@
(in (list (` ((~! syntax:) (~ setter_call)
((~' in) (.list (.` ((~! io.io) ((~ (code.text setter_command)) (~+ g!obj+) (~ setter_value))))))))))))
(in (list))))]
- (in (list& getter_interop setter_interop)))
+ (in (partial_list getter_interop setter_interop)))
)))
(def: (member_import$ type_params kind class [import_format member])
@@ -1619,7 +1619,7 @@
=members (|> members
(list#each (|>> [import_format]))
(monad.each ! (member_import$ (product.right class_decl) kind class_decl)))]
- (in (list& (class_import$ class_decl) (list#conjoint =members)))))
+ (in (partial_list (class_import$ class_decl) (list#conjoint =members)))))
(syntax: .public (array [type (..generic_type^ (list))
size <code>.any])
diff --git a/stdlib/source/library/lux/ffi.php.lux b/stdlib/source/library/lux/ffi.php.lux
index 2c71beed1..840fb30de 100644
--- a/stdlib/source/library/lux/ffi.php.lux
+++ b/stdlib/source/library/lux/ffi.php.lux
@@ -249,56 +249,56 @@
code.local)))
g!type (code.local (maybe.else class alias))
class_import (` ("php constant" (~ (code.text class))))]
- (in (list& (` (type: (~ g!type)
- (..Object (Primitive (~ (code.text class))))))
- (list#each (function (_ member)
- (case member
- {#Field [static? field alias fieldT]}
- (if static?
- (` ((~! syntax:) ((~ (qualify (maybe.else field alias))) [])
- (# (~! meta.monad) (~' in)
- (list (` (.as (~ (nullable_type fieldT))
- ("php constant" (~ (code.text (%.format class "::" field))))))))))
- (` (def: ((~ (qualify field))
- (~ g!object))
- (-> (~ g!type)
- (~ (nullable_type fieldT)))
- (as_expected
- (~ (without_null g!temp fieldT (` ("php object get" (~ (code.text field))
- (as (..Object .Any) (~ g!object))))))))))
-
- {#Method method}
- (case method
- {#Static [method alias inputsT io? try? outputT]}
- (..make_function (qualify (maybe.else method alias))
- g!temp
- (` ("php object get" (~ (code.text method))
- (as (..Object .Any)
- ("php constant" (~ (code.text (%.format class "::" method)))))))
- inputsT
- io?
- try?
- outputT)
-
- {#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 nullable_type inputsT))]
- (~ g!type)
- (~ (|> (nullable_type outputT)
- (try_type try?)
- (io_type io?))))
- (as_expected
- (~ (<| (with_io io?)
- (with_try try?)
- (without_null g!temp outputT)
- (` ("php object do"
- (~ (code.text method))
- (~ g!object)
- (~+ (list#each (with_null g!temp) g!inputs)))))))))))))
- members)))))
+ (in (partial_list (` (type: (~ g!type)
+ (..Object (Primitive (~ (code.text class))))))
+ (list#each (function (_ member)
+ (case member
+ {#Field [static? field alias fieldT]}
+ (if static?
+ (` ((~! syntax:) ((~ (qualify (maybe.else field alias))) [])
+ (# (~! meta.monad) (~' in)
+ (list (` (.as (~ (nullable_type fieldT))
+ ("php constant" (~ (code.text (%.format class "::" field))))))))))
+ (` (def: ((~ (qualify field))
+ (~ g!object))
+ (-> (~ g!type)
+ (~ (nullable_type fieldT)))
+ (as_expected
+ (~ (without_null g!temp fieldT (` ("php object get" (~ (code.text field))
+ (as (..Object .Any) (~ g!object))))))))))
+
+ {#Method method}
+ (case method
+ {#Static [method alias inputsT io? try? outputT]}
+ (..make_function (qualify (maybe.else method alias))
+ g!temp
+ (` ("php object get" (~ (code.text method))
+ (as (..Object .Any)
+ ("php constant" (~ (code.text (%.format class "::" method)))))))
+ inputsT
+ io?
+ try?
+ outputT)
+
+ {#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 nullable_type inputsT))]
+ (~ g!type)
+ (~ (|> (nullable_type outputT)
+ (try_type try?)
+ (io_type io?))))
+ (as_expected
+ (~ (<| (with_io io?)
+ (with_try try?)
+ (without_null g!temp outputT)
+ (` ("php object do"
+ (~ (code.text method))
+ (~ g!object)
+ (~+ (list#each (with_null g!temp) g!inputs)))))))))))))
+ members)))))
{#Function [name alias inputsT io? try? outputT]}
(let [imported (` ("php constant" (~ (code.text name))))]
diff --git a/stdlib/source/library/lux/locale.lux b/stdlib/source/library/lux/locale.lux
index 59b9e26e6..98a244fcd 100644
--- a/stdlib/source/library/lux/locale.lux
+++ b/stdlib/source/library/lux/locale.lux
@@ -42,5 +42,5 @@
(def: .public equivalence
(Equivalence Locale)
- (# ..hash &equivalence))
+ (# ..hash equivalence))
)
diff --git a/stdlib/source/library/lux/locale/language.lux b/stdlib/source/library/lux/locale/language.lux
index 3685740da..0efdfc91e 100644
--- a/stdlib/source/library/lux/locale/language.lux
+++ b/stdlib/source/library/lux/locale/language.lux
@@ -565,7 +565,7 @@
(implementation: .public hash
(Hash Language)
- (def: &equivalence
+ (def: equivalence
..equivalence)
(def: hash
diff --git a/stdlib/source/library/lux/locale/territory.lux b/stdlib/source/library/lux/locale/territory.lux
index dcbf207e7..e17297a5c 100644
--- a/stdlib/source/library/lux/locale/territory.lux
+++ b/stdlib/source/library/lux/locale/territory.lux
@@ -304,7 +304,7 @@
(implementation: .public hash
(Hash Territory)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash
(|>> representation
diff --git a/stdlib/source/library/lux/macro.lux b/stdlib/source/library/lux/macro.lux
index 733837047..d8e677ba6 100644
--- a/stdlib/source/library/lux/macro.lux
+++ b/stdlib/source/library/lux/macro.lux
@@ -69,7 +69,7 @@
{.#None}
(do //.monad
- [parts' (monad.each //.monad full_expansion (list& (code.symbol name) args))]
+ [parts' (monad.each //.monad full_expansion (partial_list (code.symbol name) args))]
(in (list (code.form (list#conjoint parts')))))))
[_ {.#Form {.#Item [harg targs]}}]
@@ -179,7 +179,7 @@
(macro: .public (times tokens)
(case tokens
- (pattern (list& [_ {.#Nat times}] terms))
+ (pattern (partial_list [_ {.#Nat times}] terms))
(loop (again [times times
before terms])
(case times
diff --git a/stdlib/source/library/lux/macro/pattern.lux b/stdlib/source/library/lux/macro/pattern.lux
index d255d9a26..da050a5b8 100644
--- a/stdlib/source/library/lux/macro/pattern.lux
+++ b/stdlib/source/library/lux/macro/pattern.lux
@@ -70,7 +70,7 @@
(macro: .public (or tokens)
(case tokens
- (pattern (list& [_ {.#Form patterns}] body branches))
+ (pattern (partial_list [_ {.#Form patterns}] body branches))
(case patterns
{.#End}
(failure (..wrong_syntax_error (symbol ..or)))
@@ -85,10 +85,10 @@
(macro: .public (template tokens)
(case tokens
- (pattern (list& [_ {.#Form (list [_ {.#Tuple bindings}]
- [_ {.#Tuple templates}])}]
- [_ {.#Form data}]
- branches))
+ (pattern (partial_list [_ {.#Form (list [_ {.#Tuple bindings}]
+ [_ {.#Tuple templates}])}]
+ [_ {.#Form data}]
+ branches))
(case (is (Maybe (List Code))
(do maybe_monad
[bindings' (monad#each maybe_monad symbol_short bindings)
@@ -114,7 +114,7 @@
(macro: .public (multi tokens)
(case tokens
- (pattern (list& [_meta {.#Form levels}] body next_branches))
+ (pattern (partial_list [_meta {.#Form levels}] body next_branches))
(do meta_monad
[mlc (multi_level_case^ levels)
.let [initial_bind? (case mlc
@@ -145,23 +145,23 @@
(macro: .public (let tokens)
(case tokens
- (pattern (list& [_meta {.#Form (list [_ {.#Symbol ["" name]}] pattern)}] body branches))
+ (pattern (partial_list [_meta {.#Form (list [_ {.#Symbol ["" name]}] pattern)}] body branches))
(.let [g!whole (local$ name)]
- (meta#in (list& g!whole
- (.` (case (~ g!whole) (~ pattern) (~ body)))
- branches)))
+ (meta#in (partial_list g!whole
+ (.` (case (~ g!whole) (~ pattern) (~ body)))
+ branches)))
_
(failure (..wrong_syntax_error (symbol ..let)))))
(macro: .public (|> tokens)
(case tokens
- (pattern (list& [_meta {.#Form (list [_ {.#Symbol ["" name]}] [_ {.#Tuple steps}])}] body branches))
+ (pattern (partial_list [_meta {.#Form (list [_ {.#Symbol ["" name]}] [_ {.#Tuple steps}])}] body branches))
(.let [g!name (local$ name)]
- (meta#in (list& g!name
- (.` (.let [(~ g!name) (.|> (~ g!name) (~+ steps))]
- (~ body)))
- branches)))
+ (meta#in (partial_list g!name
+ (.` (.let [(~ g!name) (.|> (~ g!name) (~+ steps))]
+ (~ body)))
+ branches)))
_
(failure (..wrong_syntax_error (symbol ..|>)))))
@@ -170,14 +170,14 @@
(-> Symbol Code)
(.` [(~ (text$ module)) (~ (text$ name))]))
-(def: (untemplated_list& last inits)
+(def: (untemplated_partial_list last inits)
(-> Code (List Code) Code)
(case inits
{.#End}
last
{.#Item [init inits']}
- (.` {.#Item (~ init) (~ (untemplated_list& last inits'))})))
+ (.` {.#Item (~ init) (~ (untemplated_partial_list last inits'))})))
(.template [<tag> <name>]
[(def: (<name> g!meta untemplated_pattern elems)
@@ -188,7 +188,7 @@
inits}
(do meta_monad
[=inits (monad#each meta_monad untemplated_pattern (list#reversed inits))]
- (in (.` [(~ g!meta) {<tag> (~ (untemplated_list& spliced =inits))}])))
+ (in (.` [(~ g!meta) {<tag> (~ (untemplated_partial_list spliced =inits))}])))
_
(do meta_monad
@@ -232,10 +232,10 @@
(macro: .public (` tokens)
(case tokens
- (pattern (list& [_meta {.#Form (list template)}] body branches))
+ (pattern (partial_list [_meta {.#Form (list template)}] body branches))
(do meta_monad
[pattern (untemplated_pattern template)]
- (in (list& pattern body branches)))
+ (in (partial_list pattern body branches)))
(pattern (list template))
(do meta_monad
diff --git a/stdlib/source/library/lux/macro/syntax.lux b/stdlib/source/library/lux/macro/syntax.lux
index 7f76debb1..8a3783149 100644
--- a/stdlib/source/library/lux/macro/syntax.lux
+++ b/stdlib/source/library/lux/macro/syntax.lux
@@ -41,7 +41,7 @@
(All (_ a) (-> (List [a a]) (List a)))
(case pairs
{.#End} {.#End}
- {.#Item [[x y] pairs']} (list& x y (un_paired pairs'))))
+ {.#Item [[x y] pairs']} (partial_list x y (un_paired pairs'))))
(def: syntax
(Parser [Code [Text (List Code)] Code])
diff --git a/stdlib/source/library/lux/math.lux b/stdlib/source/library/lux/math.lux
index c9cbed213..c7683c120 100644
--- a/stdlib/source/library/lux/math.lux
+++ b/stdlib/source/library/lux/math.lux
@@ -97,7 +97,7 @@
... else
(phase.except ..no_arithmetic_for [:it:])))
- (pattern (list& last prevs))
+ (pattern (partial_list last prevs))
(`` (cond (check.subsumes? .I64 :it:)
(phase.except ..no_arithmetic_for [:it:])
diff --git a/stdlib/source/library/lux/math/modular.lux b/stdlib/source/library/lux/math/modular.lux
index 8f4ef73a8..f23071295 100644
--- a/stdlib/source/library/lux/math/modular.lux
+++ b/stdlib/source/library/lux/math/modular.lux
@@ -100,7 +100,7 @@
(implementation: .public order
(All (_ %) (Order (Mod %)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: < ..<))
(template [<name> <op>]
diff --git a/stdlib/source/library/lux/math/number/frac.lux b/stdlib/source/library/lux/math/number/frac.lux
index 526d16ef4..0169ec4f5 100644
--- a/stdlib/source/library/lux/math/number/frac.lux
+++ b/stdlib/source/library/lux/math/number/frac.lux
@@ -568,7 +568,7 @@
(implementation: .public order
(Order Frac)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: < ..<))
(def: .public smallest
@@ -831,7 +831,7 @@
(implementation: .public hash
(Hash Frac)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash ..bits))
(def: .public (approximately? margin_of_error standard value)
diff --git a/stdlib/source/library/lux/math/number/i16.lux b/stdlib/source/library/lux/math/number/i16.lux
index 06a52afa5..a349e58d2 100644
--- a/stdlib/source/library/lux/math/number/i16.lux
+++ b/stdlib/source/library/lux/math/number/i16.lux
@@ -28,7 +28,7 @@
... (I64 size))
)
-(def: .public equivalence (Equivalence I16) (# ..sub &equivalence))
+(def: .public equivalence (Equivalence I16) (# ..sub sub_equivalence))
(def: .public width Nat (# ..sub bits))
(def: .public i16 (-> I64 I16) (# ..sub narrow))
(def: .public i64 (-> I16 I64) (# ..sub wide))
diff --git a/stdlib/source/library/lux/math/number/i32.lux b/stdlib/source/library/lux/math/number/i32.lux
index 6ddbcf015..5d6d7e915 100644
--- a/stdlib/source/library/lux/math/number/i32.lux
+++ b/stdlib/source/library/lux/math/number/i32.lux
@@ -30,7 +30,7 @@
... (I64 size))
)
-(def: .public equivalence (Equivalence I32) (# ..sub &equivalence))
+(def: .public equivalence (Equivalence I32) (# ..sub sub_equivalence))
(def: .public width Nat (# ..sub bits))
(def: .public i32 (-> I64 I32) (# ..sub narrow))
(def: .public i64 (-> I32 I64) (# ..sub wide))
diff --git a/stdlib/source/library/lux/math/number/i64.lux b/stdlib/source/library/lux/math/number/i64.lux
index 299e192e2..430127b4b 100644
--- a/stdlib/source/library/lux/math/number/i64.lux
+++ b/stdlib/source/library/lux/math/number/i64.lux
@@ -126,7 +126,7 @@
(implementation: .public hash
(All (_ a) (Hash (I64 a)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash (|>> .nat)))
@@ -181,7 +181,7 @@
(type: .public (Sub size)
(Interface
(is (Equivalence (I64 size))
- &equivalence)
+ sub_equivalence)
(is Nat
bits)
(is (-> I64 (I64 size))
@@ -199,7 +199,7 @@
co_mantissa (..xor (.i64 -1) mantissa)]
{.#Some (is Sub
(implementation
- (def: &equivalence ..equivalence)
+ (def: sub_equivalence ..equivalence)
(def: bits width)
(def: (narrow value)
(..or (|> value (..and ..sign) (..right_shifted sign_shift))
diff --git a/stdlib/source/library/lux/math/number/i8.lux b/stdlib/source/library/lux/math/number/i8.lux
index 15dc8c13a..942c1f222 100644
--- a/stdlib/source/library/lux/math/number/i8.lux
+++ b/stdlib/source/library/lux/math/number/i8.lux
@@ -28,7 +28,7 @@
... (I64 size))
)
-(def: .public equivalence (Equivalence I8) (# ..sub &equivalence))
+(def: .public equivalence (Equivalence I8) (# ..sub sub_equivalence))
(def: .public width Nat (# ..sub bits))
(def: .public i8 (-> I64 I8) (# ..sub narrow))
(def: .public i64 (-> I8 I64) (# ..sub wide))
diff --git a/stdlib/source/library/lux/math/number/int.lux b/stdlib/source/library/lux/math/number/int.lux
index 3b02cfa6e..f03646def 100644
--- a/stdlib/source/library/lux/math/number/int.lux
+++ b/stdlib/source/library/lux/math/number/int.lux
@@ -166,13 +166,13 @@
(implementation: .public order
(Order Int)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: < ..<))
(implementation: .public enum
(Enum Int)
- (def: &order ..order)
+ (def: order ..order)
(def: succ ++)
(def: pred --))
@@ -180,7 +180,7 @@
(implementation: .public interval
(Interval Int)
- (def: &enum ..enum)
+ (def: enum ..enum)
(def: top
... +9,223,372,036,854,775,807
(let [half (//i64.left_shifted 62 +1)]
@@ -244,7 +244,7 @@
(implementation: .public hash
(Hash Int)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash (|>> .nat)))
(def: .public (right_shifted parameter subject)
diff --git a/stdlib/source/library/lux/math/number/nat.lux b/stdlib/source/library/lux/math/number/nat.lux
index da1670111..2f570c7c2 100644
--- a/stdlib/source/library/lux/math/number/nat.lux
+++ b/stdlib/source/library/lux/math/number/nat.lux
@@ -150,20 +150,20 @@
(implementation: .public order
(Order Nat)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: < ..<))
(implementation: .public enum
(Enum Nat)
- (def: &order ..order)
+ (def: order ..order)
(def: succ ++)
(def: pred --))
(implementation: .public interval
(Interval Nat)
- (def: &enum ..enum)
+ (def: enum ..enum)
(def: top (-- 0))
(def: bottom 0))
@@ -362,5 +362,5 @@
(implementation: .public hash
(Hash Nat)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash function.identity))
diff --git a/stdlib/source/library/lux/math/number/ratio.lux b/stdlib/source/library/lux/math/number/ratio.lux
index d8e6bd016..883e63dae 100644
--- a/stdlib/source/library/lux/math/number/ratio.lux
+++ b/stdlib/source/library/lux/math/number/ratio.lux
@@ -85,7 +85,7 @@
(implementation: .public order
(Order Ratio)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: < ..<))
(def: .public (+ parameter subject)
diff --git a/stdlib/source/library/lux/math/number/rev.lux b/stdlib/source/library/lux/math/number/rev.lux
index cf07f2039..c6cdd0995 100644
--- a/stdlib/source/library/lux/math/number/rev.lux
+++ b/stdlib/source/library/lux/math/number/rev.lux
@@ -183,26 +183,26 @@
(implementation: .public hash
(Hash Rev)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash (|>> .nat)))
(implementation: .public order
(Order Rev)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: < ..<))
(implementation: .public enum
(Enum Rev)
- (def: &order ..order)
+ (def: order ..order)
(def: succ ++)
(def: pred --))
(implementation: .public interval
(Interval Rev)
- (def: &enum ..enum)
+ (def: enum ..enum)
(def: top (.rev -1))
(def: bottom (.rev 0)))
diff --git a/stdlib/source/library/lux/math/random.lux b/stdlib/source/library/lux/math/random.lux
index 9b6153dfb..5dc32f986 100644
--- a/stdlib/source/library/lux/math/random.lux
+++ b/stdlib/source/library/lux/math/random.lux
@@ -55,7 +55,7 @@
(implementation: .public apply
(Apply Random)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(function (_ state)
@@ -66,7 +66,7 @@
(implementation: .public monad
(Monad Random)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in a)
(function (_ state)
diff --git a/stdlib/source/library/lux/meta.lux b/stdlib/source/library/lux/meta.lux
index 0ec0b9aaa..f1337c481 100644
--- a/stdlib/source/library/lux/meta.lux
+++ b/stdlib/source/library/lux/meta.lux
@@ -45,7 +45,7 @@
(implementation: .public apply
(Apply Meta)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(function (_ lux)
@@ -64,7 +64,7 @@
(implementation: .public monad
(Monad Meta)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in x)
(function (_ lux)
diff --git a/stdlib/source/library/lux/meta/symbol.lux b/stdlib/source/library/lux/meta/symbol.lux
index d07f8e092..e745413af 100644
--- a/stdlib/source/library/lux/meta/symbol.lux
+++ b/stdlib/source/library/lux/meta/symbol.lux
@@ -28,12 +28,12 @@
(def: .public equivalence
(Equivalence Symbol)
- (# ..hash &equivalence))
+ (# ..hash equivalence))
(implementation: .public order
(Order Symbol)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< [moduleP shortP] [moduleS shortS])
(if (text#= moduleP moduleS)
(# text.order < shortP shortS)
diff --git a/stdlib/source/library/lux/target/common_lisp.lux b/stdlib/source/library/lux/target/common_lisp.lux
index c868a0781..dbeee8bdb 100644
--- a/stdlib/source/library/lux/target/common_lisp.lux
+++ b/stdlib/source/library/lux/target/common_lisp.lux
@@ -196,9 +196,9 @@
(def: .public (destructuring_bind [bindings expression] body)
(-> [Var/* (Expression Any)] (List (Expression Any)) (Computation Any))
- (..form (list& (..var "destructuring-bind")
- (transmutation bindings) expression
- body)))
+ (..form (partial_list (..var "destructuring-bind")
+ (transmutation bindings) expression
+ body)))
(template [<call> <input_var>+ <input_type>+ <function>+]
[(`` (def: .public (<call> [(~~ (template.spliced <input_var>+))] function)
@@ -289,7 +289,7 @@
(def: .public (funcall/+ [func args])
(-> [(Expression Any) (List (Expression Any))] (Computation Any))
- (..call/* (..var "funcall") (list& func args)))
+ (..call/* (..var "funcall") (partial_list func args)))
(def: .public (search/3 [reference space start])
(-> [(Expression Any) (Expression Any) (Expression Any)] (Computation Any))
@@ -347,12 +347,12 @@
(template [<lux_name> <host_name>]
[(def: .public (<lux_name> bindings body)
(-> (List [Var/1 (Expression Any)]) (List (Expression Any)) (Computation Any))
- (..form (list& (..var <host_name>)
- (|> bindings
- (list#each (function (_ [name value])
- (..form (list name value))))
- ..form)
- body)))]
+ (..form (partial_list (..var <host_name>)
+ (|> bindings
+ (list#each (function (_ [name value])
+ (..form (list name value))))
+ ..form)
+ body)))]
[let "let"]
[let* "let*"]
@@ -369,7 +369,7 @@
(template [<name> <symbol>]
[(def: .public <name>
(-> (List (Expression Any)) (Computation Any))
- (|>> (list& (..var <symbol>)) ..form))]
+ (|>> (partial_list (..var <symbol>)) ..form))]
[progn "progn"]
[tagbody "tagbody"]
@@ -392,13 +392,13 @@
(def: .public (handler_case handlers body)
(-> (List Handler) (Expression Any) (Computation Any))
- (..form (list& (..var "handler-case")
- body
- (list#each (function (_ [type condition handler])
- (..form (list type
- (transmutation (..args (list condition)))
- handler)))
- handlers))))
+ (..form (partial_list (..var "handler-case")
+ body
+ (list#each (function (_ [type condition handler])
+ (..form (list type
+ (transmutation (..args (list condition)))
+ handler)))
+ handlers))))
(template [<name> <prefix>]
[(def: .public (<name> conditions expression)
@@ -414,7 +414,7 @@
_
(abstraction
(format <prefix> (|> conditions (list#each ..symbol)
- (list& (..symbol "or")) ..form
+ (partial_list (..symbol "or")) ..form
representation)
" " (representation expression)))))]
@@ -427,7 +427,7 @@
(def: .public (block name body)
(-> Label (List (Expression Any)) (Computation Any))
- (..form (list& (..var "block") (transmutation name) body)))
+ (..form (partial_list (..var "block") (transmutation name) body)))
(def: .public (return_from target value)
(-> Label (Expression Any) (Computation Any))
@@ -439,11 +439,11 @@
(def: .public (cond clauses else)
(-> (List [(Expression Any) (Expression Any)]) (Expression Any) (Computation Any))
- (..form (list& (..var "cond")
- (list#composite (list#each (function (_ [test then])
- (..form (list test then)))
- clauses)
- (list (..form (list (..bool true) else)))))))
+ (..form (partial_list (..var "cond")
+ (list#composite (list#each (function (_ [test then])
+ (..form (list test then)))
+ clauses)
+ (list (..form (list (..bool true) else)))))))
(def: .public tag
(-> Text Tag)
diff --git a/stdlib/source/library/lux/target/jvm/bytecode.lux b/stdlib/source/library/lux/target/jvm/bytecode.lux
index 1c5a85731..d6de25632 100644
--- a/stdlib/source/library/lux/target/jvm/bytecode.lux
+++ b/stdlib/source/library/lux/target/jvm/bytecode.lux
@@ -218,7 +218,7 @@
(implementation: .public monad
(Monad Bytecode)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in it)
(function (_ state)
@@ -947,7 +947,7 @@
(try|in (let [@from (the #program_counter tracker)]
[[pool
environment'
- (|> (list#mix (..acknowledge_label actual) tracker (list& default at_minimum afterwards))
+ (|> (list#mix (..acknowledge_label actual) tracker (partial_list default at_minimum afterwards))
(has #program_counter program_counter'))]
[(function (_ resolver)
(let [get (is (-> Label (Maybe [Stack (Maybe Address)]))
@@ -989,7 +989,7 @@
(try|in (let [@from (the #program_counter tracker)]
[[pool
environment'
- (|> (list#mix (..acknowledge_label actual) tracker (list& default (list#each product.right cases)))
+ (|> (list#mix (..acknowledge_label actual) tracker (partial_list default (list#each product.right cases)))
(has #program_counter program_counter'))]
[(function (_ resolver)
(let [get (is (-> Label (Maybe [Stack (Maybe Address)]))
diff --git a/stdlib/source/library/lux/target/jvm/constant/pool.lux b/stdlib/source/library/lux/target/jvm/constant/pool.lux
index 12e6609e3..936cfe3c4 100644
--- a/stdlib/source/library/lux/target/jvm/constant/pool.lux
+++ b/stdlib/source/library/lux/target/jvm/constant/pool.lux
@@ -60,7 +60,7 @@
(implementation: .public monad
(Monad Resource)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in it)
(function (_ state)
diff --git a/stdlib/source/library/lux/target/jvm/encoding/signed.lux b/stdlib/source/library/lux/target/jvm/encoding/signed.lux
index 160141e3b..85e812b71 100644
--- a/stdlib/source/library/lux/target/jvm/encoding/signed.lux
+++ b/stdlib/source/library/lux/target/jvm/encoding/signed.lux
@@ -37,7 +37,7 @@
(implementation: .public order
(All (_ brand) (Order (Signed brand)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< reference sample)
(i.< (representation reference) (representation sample))))
diff --git a/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux b/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux
index 0282dd0b2..7e47d8260 100644
--- a/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux
+++ b/stdlib/source/library/lux/target/jvm/encoding/unsigned.lux
@@ -37,7 +37,7 @@
(implementation: .public order
(All (_ brand) (Order (Unsigned brand)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< reference sample)
(n.< (representation reference)
(representation sample))))
diff --git a/stdlib/source/library/lux/target/jvm/method.lux b/stdlib/source/library/lux/target/jvm/method.lux
index be590f849..cac656214 100644
--- a/stdlib/source/library/lux/target/jvm/method.lux
+++ b/stdlib/source/library/lux/target/jvm/method.lux
@@ -57,7 +57,7 @@
[@name (//pool.utf8 name)
@descriptor (//pool.descriptor (//type.descriptor type))
attributes (|> (if with_signature?
- (list& (//attribute.signature (//type.signature type)) attributes)
+ (partial_list (//attribute.signature (//type.signature type)) attributes)
attributes)
(monad.all !)
(# ! each sequence.of_list))
diff --git a/stdlib/source/library/lux/target/jvm/type.lux b/stdlib/source/library/lux/target/jvm/type.lux
index 4343e6ff0..b0a0a1624 100644
--- a/stdlib/source/library/lux/target/jvm/type.lux
+++ b/stdlib/source/library/lux/target/jvm/type.lux
@@ -160,7 +160,7 @@
(implementation: .public hash
(All (_ category) (Hash (Type category)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash (|>> ..signature (# /signature.hash hash))))
(def: .public (primitive? type)
diff --git a/stdlib/source/library/lux/target/jvm/type/signature.lux b/stdlib/source/library/lux/target/jvm/type/signature.lux
index a5b710c59..ddf19de5a 100644
--- a/stdlib/source/library/lux/target/jvm/type/signature.lux
+++ b/stdlib/source/library/lux/target/jvm/type/signature.lux
@@ -177,6 +177,6 @@
(implementation: .public hash
(All (_ category) (Hash (Signature category)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash (|>> representation text#hash)))
)
diff --git a/stdlib/source/library/lux/target/lua.lux b/stdlib/source/library/lux/target/lua.lux
index a6e63c04c..ef63669f0 100644
--- a/stdlib/source/library/lux/target/lua.lux
+++ b/stdlib/source/library/lux/target/lua.lux
@@ -52,7 +52,7 @@
(implementation: .public hash
(All (_ brand) (Hash (Code brand)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash (|>> representation (# text.hash hash))))
(def: .public manual
diff --git a/stdlib/source/library/lux/target/php.lux b/stdlib/source/library/lux/target/php.lux
index a8bfa37a1..5338f7aa6 100644
--- a/stdlib/source/library/lux/target/php.lux
+++ b/stdlib/source/library/lux/target/php.lux
@@ -60,7 +60,7 @@
(implementation: .public hash
(All (_ brand) (Hash (Code brand)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash (|>> representation (# text.hash hash))))
(def: .public manual
@@ -198,7 +198,7 @@
... TODO: Remove when no longer using JPHP.
(def: .public (apply/*' args func)
(-> (List Expression) Expression Computation)
- (apply/* (list& func args) (..constant "call_user_func")))
+ (apply/* (partial_list func args) (..constant "call_user_func")))
(def: parameters
(-> (List Argument) Text)
@@ -322,7 +322,7 @@
(def: .public (array_merge/+ required optionals)
(-> Expression (List Expression) Computation)
- (..apply/* (list& required optionals) (..constant "array_merge")))
+ (..apply/* (partial_list required optionals) (..constant "array_merge")))
(def: .public (array/** kvs)
(-> (List [Expression Expression]) Literal)
diff --git a/stdlib/source/library/lux/target/python.lux b/stdlib/source/library/lux/target/python.lux
index 1210e2ad1..492881cea 100644
--- a/stdlib/source/library/lux/target/python.lux
+++ b/stdlib/source/library/lux/target/python.lux
@@ -69,7 +69,7 @@
(implementation: .public hash
(All (_ brand) (Hash (Code brand)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash (|>> representation (# text.hash hash))))
(def: .public manual
@@ -430,7 +430,7 @@
{.#None}
(.list))]
(abstraction
- (format "exec" (representation (..tuple (list& code extra)))))))
+ (format "exec" (representation (..tuple (partial_list code extra)))))))
(def: .public (def name args body)
(-> SVar (List (Ex (_ k) (Var k))) (Statement Any) (Statement Any))
diff --git a/stdlib/source/library/lux/target/scheme.lux b/stdlib/source/library/lux/target/scheme.lux
index 3bd2b22ce..509d1fe05 100644
--- a/stdlib/source/library/lux/target/scheme.lux
+++ b/stdlib/source/library/lux/target/scheme.lux
@@ -43,7 +43,7 @@
(implementation: .public hash
(All (_ brand) (Hash (Code brand)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash (|>> representation (# text.hash hash))))
(template [<type> <brand> <super>+]
@@ -304,7 +304,7 @@
(template [<lux_name> <scheme_name>]
[(def: .public <lux_name>
(-> (List Expression) Computation)
- (|>> (list& (..var <scheme_name>)) ..form))]
+ (|>> (partial_list (..var <scheme_name>)) ..form))]
[or "or"]
[and "and"]
@@ -383,6 +383,6 @@
(list#composite (list#each (function (_ [when then])
(..form (list when then)))
clauses))
- (list& variable)))
+ (partial_list variable)))
body)))
)
diff --git a/stdlib/source/library/lux/time.lux b/stdlib/source/library/lux/time.lux
index cb70226c9..1d8bf0de5 100644
--- a/stdlib/source/library/lux/time.lux
+++ b/stdlib/source/library/lux/time.lux
@@ -102,7 +102,7 @@
(implementation: .public order
(Order Time)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< param subject)
(n.< (representation param) (representation subject))))
@@ -110,7 +110,7 @@
(`` (implementation: .public enum
(Enum Time)
- (def: &order ..order)
+ (def: order ..order)
(def: succ
(|>> representation ++ (n.% ..limit) abstraction))
diff --git a/stdlib/source/library/lux/time/date.lux b/stdlib/source/library/lux/time/date.lux
index c79e12d32..c19df3444 100644
--- a/stdlib/source/library/lux/time/date.lux
+++ b/stdlib/source/library/lux/time/date.lux
@@ -120,7 +120,7 @@
(implementation: .public order
(Order Date)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< reference sample)
(let [reference (representation reference)
@@ -343,7 +343,7 @@
(implementation: .public enum
(Enum Date)
- (def: &order ..order)
+ (def: order ..order)
(def: succ
(|>> ..days ++ ..of_days))
diff --git a/stdlib/source/library/lux/time/day.lux b/stdlib/source/library/lux/time/day.lux
index 935d1937d..1a5b0a10f 100644
--- a/stdlib/source/library/lux/time/day.lux
+++ b/stdlib/source/library/lux/time/day.lux
@@ -62,7 +62,7 @@
(implementation: .public order
(Order Day)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< reference sample)
(n.< (..nat reference) (..nat sample))))
@@ -70,7 +70,7 @@
(implementation: .public enum
(Enum Day)
- (def: &order ..order)
+ (def: order ..order)
(def: (succ day)
(case day
@@ -173,7 +173,7 @@
(implementation: .public hash
(Hash Day)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (hash day)
(case day
(^.template [<prime> <day>]
diff --git a/stdlib/source/library/lux/time/duration.lux b/stdlib/source/library/lux/time/duration.lux
index 257401f2d..85e271547 100644
--- a/stdlib/source/library/lux/time/duration.lux
+++ b/stdlib/source/library/lux/time/duration.lux
@@ -69,7 +69,7 @@
(implementation: .public order
(Order Duration)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< param subject)
(i.< (representation param) (representation subject))))
@@ -194,7 +194,7 @@
(implementation: .public enum
(Enum Duration)
- (def: &order ..order)
+ (def: order ..order)
(def: succ
(..composite ..milli_second))
(def: pred
diff --git a/stdlib/source/library/lux/time/instant.lux b/stdlib/source/library/lux/time/instant.lux
index 64467ec99..d32879232 100644
--- a/stdlib/source/library/lux/time/instant.lux
+++ b/stdlib/source/library/lux/time/instant.lux
@@ -66,14 +66,14 @@
(implementation: .public order
(Order Instant)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< param subject)
(# i.order < (representation param) (representation subject))))
(`` (implementation: .public enum
(Enum Instant)
- (def: &order ..order)
+ (def: order ..order)
(~~ (template [<name>]
[(def: <name>
(|>> representation (# i.enum <name>) abstraction))]
diff --git a/stdlib/source/library/lux/time/month.lux b/stdlib/source/library/lux/time/month.lux
index 3d97636a5..503780519 100644
--- a/stdlib/source/library/lux/time/month.lux
+++ b/stdlib/source/library/lux/time/month.lux
@@ -101,7 +101,7 @@
(implementation: .public hash
(Hash Month)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (hash month)
(case month
(^.template [<prime> <month>]
@@ -123,7 +123,7 @@
(implementation: .public order
(Order Month)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< reference sample)
(n.< (..number reference)
@@ -132,7 +132,7 @@
(implementation: .public enum
(Enum Month)
- (def: &order ..order)
+ (def: order ..order)
(def: (succ month)
(case month
diff --git a/stdlib/source/library/lux/time/year.lux b/stdlib/source/library/lux/time/year.lux
index 26924080e..608f29958 100644
--- a/stdlib/source/library/lux/time/year.lux
+++ b/stdlib/source/library/lux/time/year.lux
@@ -136,7 +136,7 @@
(implementation: .public order
(Order Year)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< reference subject)
(i.< (..value reference) (..value subject))))
diff --git a/stdlib/source/library/lux/tool/compiler/default/init.lux b/stdlib/source/library/lux/tool/compiler/default/init.lux
index c46cbfa7b..5e204f6ca 100644
--- a/stdlib/source/library/lux/tool/compiler/default/init.lux
+++ b/stdlib/source/library/lux/tool/compiler/default/init.lux
@@ -222,10 +222,10 @@
(def: (default_dependencies prelude input)
(-> descriptor.Module ///.Input (List descriptor.Module))
- (list& descriptor.runtime
- (if (text#= prelude (the ///.#module input))
- (list)
- (list prelude))))
+ (partial_list descriptor.runtime
+ (if (text#= prelude (the ///.#module input))
+ (list)
+ (list prelude))))
(def: module_aliases
(-> .Module Aliases)
diff --git a/stdlib/source/library/lux/tool/compiler/default/platform.lux b/stdlib/source/library/lux/tool/compiler/default/platform.lux
index 0e6a0f2bc..4937ec9c1 100644
--- a/stdlib/source/library/lux/tool/compiler/default/platform.lux
+++ b/stdlib/source/library/lux/tool/compiler/default/platform.lux
@@ -76,7 +76,7 @@
<Operation> (these ///generation.Operation <type_vars>)]
(type: .public (Platform <type_vars>)
(Record
- [#&file_system (file.System Async)
+ [#file_system (file.System Async)
#host (///generation.Host expression directive)
#phase (///generation.Phase <type_vars>)
#runtime (<Operation> [Registry Output])
@@ -112,7 +112,7 @@
(All (_ <type_vars> document)
(-> context.Context <Platform> module.ID (Key document) (Writer document) (archive.Entry document)
(Async (Try Any))))
- (let [system (the #&file_system platform)
+ (let [system (the #file_system platform)
write_artifact! (is (-> [artifact.ID (Maybe Text) Binary] (Action Any))
(function (_ [artifact_id custom content])
(is (Async (Try Any))
@@ -273,8 +273,8 @@
(the #phase platform)
generation_bundle)]
_ (is (Async (Try Any))
- (cache.enable! async.monad (the #&file_system platform) context))
- [archive analysis_state bundles] (ioW.thaw (list) compilation_configuration (the #host platform) (the #&file_system platform) context import compilation_sources)
+ (cache.enable! async.monad (the #file_system platform) context))
+ [archive analysis_state bundles] (ioW.thaw (list) compilation_configuration (the #host platform) (the #file_system platform) context import compilation_sources)
.let [with_missing_extensions
(is (All (_ <type_vars>)
(-> <Platform> (Program expression directive) <State+>
@@ -744,7 +744,7 @@
{try.#Failure error}
(do !
- [_ (cache/archive.cache! (the #&file_system platform) context archive)]
+ [_ (cache/archive.cache! (the #file_system platform) context archive)]
(async#in {try.#Failure error})))))))
(def: (lux_compiler import context platform compilation_sources compiler compilation)
@@ -795,7 +795,7 @@
{try.#Failure error}
(do !
- [_ (cache/archive.cache! (the #&file_system platform) context archive)]
+ [_ (cache/archive.cache! (the #file_system platform) context archive)]
(async#in {try.#Failure error})))))))
(for @.old (these (def: Fake_State
@@ -817,7 +817,7 @@
Lux_Compiler))
(function (_ all_customs importer import! @module [archive lux_state] module)
(do [! (try.with async.monad)]
- [input (io.read (the #&file_system platform)
+ [input (io.read (the #file_system platform)
importer
import
compilation_sources
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/complex.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/complex.lux
index 4ee608dd2..738795545 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/complex.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/complex.lux
@@ -69,8 +69,8 @@
(implementation: .public (hash super)
(All (_ a) (-> (Hash a) (Hash (Complex a))))
- (def: &equivalence
- (..equivalence (# super &equivalence)))
+ (def: equivalence
+ (..equivalence (# super equivalence)))
(def: (hash value)
(case value
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/coverage.lux b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/coverage.lux
index ccb3e06ed..0e100dad2 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/analysis/coverage.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/analysis/coverage.lux
@@ -74,7 +74,7 @@
(-> Coverage (List Coverage))
(case coverage
{#Alt left right}
- (list& left (alternatives right))
+ (partial_list left (alternatives right))
_
(list coverage)))
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 4c706598f..88f4c7069 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
@@ -110,7 +110,7 @@
{.#UnivQ _}
(do phase.monad
[[@var :var:] (/type.check check.var)]
- (general' (list& @var vars) archive analyse (maybe.trusted (type.applied (list :var:) inferT)) args))
+ (general' (partial_list @var vars) archive analyse (maybe.trusted (type.applied (list :var:) inferT)) args))
{.#ExQ _}
(do phase.monad
@@ -138,7 +138,7 @@
argA (<| (/.with_exception ..cannot_infer_argument [inputT argC])
(/type.expecting inputT)
(analyse archive argC))]
- (in [just_before vars outputT' (list& argA args'A)]))
+ (in [just_before vars outputT' (partial_list argA args'A)]))
{.#Var infer_id}
(do phase.monad
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 6caf2ffab..394d54163 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
@@ -113,7 +113,7 @@
(do check.monad
[[@head :head:] check.var
[tail :tuple:] (again envs (maybe.trusted (type.applied (list :head:) :it:)))]
- (in [(list& @head tail) :tuple:]))
+ (in [(partial_list @head tail) :tuple:]))
{.#Apply _}
(do [! check.monad]
@@ -196,7 +196,7 @@
[[memberP [memberP+ thenA]] ((as (All (_ a) (-> (Maybe Nat) Type Code (Operation a) (Operation [Pattern a])))
pattern_analysis)
{.#None} memberT memberC then)]
- (in [(list& memberP memberP+) thenA]))))
+ (in [(partial_list memberP memberP+) thenA]))))
(do !
[nextA next]
(in [(list) nextA]))
@@ -283,7 +283,7 @@
{.#None}
(..tuple_pattern_analysis pattern_analysis :input: sub_patterns next))))
- (pattern [location {.#Variant (list& [_ {.#Nat lefts}] [_ {.#Bit right?}] values)}])
+ (pattern [location {.#Variant (partial_list [_ {.#Nat lefts}] [_ {.#Bit right?}] values)}])
(/.with_location location
(do ///.monad
[[@ex_var+ :input:'] (/type.check (..tuple :input:))]
@@ -324,7 +324,7 @@
_
(/.except ..mismatch [:input:' pattern]))))
- (pattern [location {.#Variant (list& [_ {.#Symbol tag}] values)}])
+ (pattern [location {.#Variant (partial_list [_ {.#Symbol tag}] values)}])
(/.with_location location
(do ///.monad
[tag (///extension.lifted (meta.normal tag))
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 fdb485bbd..b1d7398e6 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
@@ -296,14 +296,14 @@
output (is (List [Symbol Code])
{.#End})])
(case input
- (pattern (list& [_ {.#Symbol ["" slotH]}] valueH tail))
+ (pattern (partial_list [_ {.#Symbol ["" slotH]}] valueH tail))
(if pattern_matching?
(///#in {.#None})
(do ///.monad
[slotH (///extension.lifted (meta.normal ["" slotH]))]
(again tail {.#Item [slotH valueH] output})))
- (pattern (list& [_ {.#Symbol slotH}] valueH tail))
+ (pattern (partial_list [_ {.#Symbol slotH}] valueH tail))
(do ///.monad
[slotH (///extension.lifted (meta.normal slotH))]
(again tail {.#Item [slotH valueH] output}))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/directive.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/directive.lux
index 0c301f277..df695d244 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/directive.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/directive.lux
@@ -74,7 +74,7 @@
{try.#Failure error}
{try.#Failure error})))))
-(with_expansions [<lux_def_module> (these [|form_location| {.#Form (list& [|text_location| {.#Text "lux def module"}] annotations)}])]
+(with_expansions [<lux_def_module> (these [|form_location| {.#Form (partial_list [|text_location| {.#Text "lux def module"}] annotations)}])]
(def: .public (phase wrapper expander)
(-> //.Wrapper Expander Phase)
(let [analysis (//analysis.phase expander)]
@@ -90,10 +90,10 @@
extension_eval (as Eval (wrapper (as_expected compiler_eval)))]
_ (//.with (has [//extension.#state /.#analysis /.#state //extension.#state .#eval] extension_eval state))]
(case code
- (pattern [_ {.#Form (list& [_ {.#Text name}] inputs)}])
+ (pattern [_ {.#Form (partial_list [_ {.#Text name}] inputs)}])
(//extension.apply archive again [name inputs])
- (pattern [_ {.#Form (list& macro inputs)}])
+ (pattern [_ {.#Form (partial_list macro inputs)}])
(do !
[expansion (/.lifted_analysis
(do !
@@ -114,7 +114,7 @@
_
(//.except ..invalid_macro_call code))))]
(case expansion
- (pattern (list& <lux_def_module> referrals))
+ (pattern (partial_list <lux_def_module> referrals))
(|> (again archive <lux_def_module>)
(# ! each (revised /.#referrals (list#composite referrals))))
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 5acdad833..1d0c1f86b 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
@@ -130,7 +130,7 @@
(phase archive constructorC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.expecting Any)) inputsC)
_ (analysis/type.inference .Any)]
- (in {analysis.#Extension extension (list& constructorA inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list constructorA inputsA)})))]))
(def: object::get
Handler
@@ -154,9 +154,9 @@
(phase archive objectC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.expecting Any)) inputsC)
_ (analysis/type.inference .Any)]
- (in {analysis.#Extension extension (list& (analysis.text methodC)
- objectA
- inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list (analysis.text methodC)
+ objectA
+ inputsA)})))]))
(def: bundle::object
Bundle
@@ -190,7 +190,7 @@
(phase archive abstractionC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.expecting Any)) inputsC)
_ (analysis/type.inference Any)]
- (in {analysis.#Extension extension (list& abstractionA inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list abstractionA inputsA)})))]))
(def: js::type_of
Handler
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 4b7c3e153..3547f8029 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
@@ -946,7 +946,7 @@
(in [[super_name superT] (java/lang/Class::isAssignableFrom super_class target_class)])))
(case (java/lang/Class::getGenericSuperclass source_class)
{.#Some super}
- (list& super (array.list {.#None} (java/lang/Class::getGenericInterfaces source_class)))
+ (partial_list super (array.list {.#None} (java/lang/Class::getGenericInterfaces source_class)))
{.#None}
(if (java/lang/reflect/Modifier::isInterface (java/lang/Class::getModifiers source_class))
@@ -957,7 +957,7 @@
(def: (inheritance_candidate_parents class_loader fromT target_class toT fromC)
(-> java/lang/ClassLoader .Type (java/lang/Class java/lang/Object) .Type Code (Operation (List [[Text .Type] Bit])))
(case fromT
- (pattern {.#Primitive _ (list& self_classT super_classT super_interfacesT+)})
+ (pattern {.#Primitive _ (partial_list self_classT super_classT super_interfacesT+)})
(monad.each phase.monad
(function (_ superT)
(do [! phase.monad]
@@ -965,7 +965,7 @@
super_class (phase.lifted (reflection!.load class_loader super_name))]
(in [[super_name superT]
(java/lang/Class::isAssignableFrom super_class target_class)])))
- (list& super_classT super_interfacesT+))
+ (partial_list super_classT super_interfacesT+))
_
(/////analysis.except ..cannot_cast [fromT toT fromC])))
@@ -1312,8 +1312,8 @@
inputsT
_
- (list& {.#Primitive (java/lang/Class::getName owner) owner_tvarsT}
- inputsT)))
+ (partial_list {.#Primitive (java/lang/Class::getName owner) owner_tvarsT}
+ inputsT)))
outputT)]]
(in [methodT
(reflection!.deprecated? (java/lang/reflect/Method::getDeclaredAnnotations method))
@@ -1397,14 +1397,14 @@
(let [interfaces (array.list {.#None} (java/lang/Class::getInterfaces it))
supers (case (java/lang/Class::getSuperclass it)
{.#Some class}
- (list& class interfaces)
+ (partial_list class interfaces)
{.#None}
interfaces)]
(|> supers
(list#each family_tree')
list#conjoint
- (list& it))))
+ (partial_list it))))
(def: family_tree
(-> (java/lang/Class java/lang/Object)
@@ -1454,7 +1454,7 @@
{.#Item method alternatives}
(if allow_inheritance?
(in method)
- (/////analysis.except ..too_many_candidates [actual_class_tvars class_name method_name actual_method_tvars inputsJT (list& method alternatives)])))))
+ (/////analysis.except ..too_many_candidates [actual_class_tvars class_name method_name actual_method_tvars inputsJT (partial_list method alternatives)])))))
(def: constructor_method
"<init>")
@@ -1526,10 +1526,10 @@
(not deprecated?))
[outputT argsA] (inference.general archive analyse methodT (list#each product.right argsTC))
outputJT (check_return outputT)]
- (in {/////analysis.#Extension extension_name (list& (/////analysis.text (..signature (jvm.class class (list))))
- (/////analysis.text method)
- (/////analysis.text (..signature outputJT))
- (decorate_inputs argsT argsA))})))]))
+ (in {/////analysis.#Extension extension_name (partial_list (/////analysis.text (..signature (jvm.class class (list))))
+ (/////analysis.text method)
+ (/////analysis.text (..signature outputJT))
+ (decorate_inputs argsT argsA))})))]))
(def: (invoke::virtual class_loader)
(-> java/lang/ClassLoader Handler)
@@ -1542,7 +1542,7 @@
[methodT deprecated? exceptionsT] (..method_candidate true class_loader class_tvars class method_tvars method {#Virtual} argsT)
_ (phase.assertion ..deprecated_method [class method methodT]
(not deprecated?))
- [outputT allA] (inference.general archive analyse methodT (list& objectC (list#each product.right argsTC)))
+ [outputT allA] (inference.general archive analyse methodT (partial_list objectC (list#each product.right argsTC)))
.let [[objectA argsA] (case allA
{.#Item objectA argsA}
[objectA argsA]
@@ -1550,11 +1550,11 @@
_
(undefined))]
outputJT (check_return outputT)]
- (in {/////analysis.#Extension extension_name (list& (/////analysis.text (..signature (jvm.class class (list))))
- (/////analysis.text method)
- (/////analysis.text (..signature outputJT))
- objectA
- (decorate_inputs argsT argsA))})))]))
+ (in {/////analysis.#Extension extension_name (partial_list (/////analysis.text (..signature (jvm.class class (list))))
+ (/////analysis.text method)
+ (/////analysis.text (..signature outputJT))
+ objectA
+ (decorate_inputs argsT argsA))})))]))
(def: (invoke::special class_loader)
(-> java/lang/ClassLoader Handler)
@@ -1567,7 +1567,7 @@
[methodT deprecated? exceptionsT] (..method_candidate false class_loader class_tvars class method_tvars method {#Special} argsT)
_ (phase.assertion ..deprecated_method [class method methodT]
(not deprecated?))
- [outputT allA] (inference.general archive analyse methodT (list& objectC (list#each product.right argsTC)))
+ [outputT allA] (inference.general archive analyse methodT (partial_list objectC (list#each product.right argsTC)))
.let [[objectA argsA] (case allA
{.#Item objectA argsA}
[objectA argsA]
@@ -1575,11 +1575,11 @@
_
(undefined))]
outputJT (check_return outputT)]
- (in {/////analysis.#Extension extension_name (list& (/////analysis.text (..signature (jvm.class class (list))))
- (/////analysis.text method)
- (/////analysis.text (..signature outputJT))
- objectA
- (decorate_inputs argsT argsA))})))]))
+ (in {/////analysis.#Extension extension_name (partial_list (/////analysis.text (..signature (jvm.class class (list))))
+ (/////analysis.text method)
+ (/////analysis.text (..signature outputJT))
+ objectA
+ (decorate_inputs argsT argsA))})))]))
(def: (invoke::interface class_loader)
(-> java/lang/ClassLoader Handler)
@@ -1595,7 +1595,7 @@
[methodT deprecated? exceptionsT] (..method_candidate true class_loader class_tvars class_name method_tvars method {#Interface} argsT)
_ (phase.assertion ..deprecated_method [class_name method methodT]
(not deprecated?))
- [outputT allA] (inference.general archive analyse methodT (list& objectC (list#each product.right argsTC)))
+ [outputT allA] (inference.general archive analyse methodT (partial_list objectC (list#each product.right argsTC)))
.let [[objectA argsA] (case allA
{.#Item objectA argsA}
[objectA argsA]
@@ -1604,11 +1604,11 @@
(undefined))]
outputJT (check_return outputT)]
(in {/////analysis.#Extension extension_name
- (list& (/////analysis.text (..signature (jvm.class class_name (list))))
- (/////analysis.text method)
- (/////analysis.text (..signature outputJT))
- objectA
- (decorate_inputs argsT argsA))})))]))
+ (partial_list (/////analysis.text (..signature (jvm.class class_name (list))))
+ (/////analysis.text method)
+ (/////analysis.text (..signature outputJT))
+ objectA
+ (decorate_inputs argsT argsA))})))]))
(def: (invoke::constructor class_loader)
(-> java/lang/ClassLoader Handler)
@@ -1622,8 +1622,8 @@
_ (phase.assertion ..deprecated_method [class ..constructor_method methodT]
(not deprecated?))
[outputT argsA] (inference.general archive analyse methodT (list#each product.right argsTC))]
- (in {/////analysis.#Extension extension_name (list& (/////analysis.text (..signature (jvm.class class (list))))
- (decorate_inputs argsT argsA))})))]))
+ (in {/////analysis.#Extension extension_name (partial_list (/////analysis.text (..signature (jvm.class class (list))))
+ (decorate_inputs argsT argsA))})))]))
(def: (bundle::member class_loader)
(-> java/lang/ClassLoader Bundle)
@@ -1671,8 +1671,8 @@
(def: (annotation_analysis [name parameters])
(-> (Annotation Analysis) Analysis)
- (/////analysis.tuple (list& (/////analysis.text name)
- (list#each annotation_parameter_analysis parameters))))
+ (/////analysis.tuple (partial_list (/////analysis.text name)
+ (list#each annotation_parameter_analysis parameters))))
(template [<name> <category>]
[(def: <name>
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 4949783fe..a0e5d2a1c 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
@@ -154,9 +154,9 @@
(phase archive objectC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.expecting Any)) inputsC)
_ (analysis/type.inference .Any)]
- (in {analysis.#Extension extension (list& (analysis.text methodC)
- objectA
- inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list (analysis.text methodC)
+ objectA
+ inputsA)})))]))
(def: bundle::object
Bundle
@@ -211,7 +211,7 @@
(phase archive abstractionC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.expecting Any)) inputsC)
_ (analysis/type.inference Any)]
- (in {analysis.#Extension extension (list& abstractionA inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list abstractionA inputsA)})))]))
(def: lua::power
Handler
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 ba71661c9..bf2f53507 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
@@ -119,7 +119,7 @@
(////analysis.tuple
(list (////analysis.tuple (list#each (|>> ////analysis.nat) cases))
branch))))
- (list& input else)
+ (partial_list input else)
{////analysis.#Extension extension_name}))))])))
... "lux is" represents reference/pointer equality.
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 dae6adef6..760db788c 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
@@ -132,7 +132,7 @@
(do [! phase.monad]
[inputsA (monad.each ! (|>> (phase archive) (analysis/type.with_type Any)) inputsC)
_ (analysis/type.infer .Any)]
- (in {analysis.#Extension extension (list& (analysis.text constructor) inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list (analysis.text constructor) inputsA)})))]))
(def: object::get
Handler
@@ -156,9 +156,9 @@
(phase archive objectC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.with_type Any)) inputsC)
_ (analysis/type.infer .Any)]
- (in {analysis.#Extension extension (list& (analysis.text methodC)
- objectA
- inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list (analysis.text methodC)
+ objectA
+ inputsA)})))]))
(def: bundle::object
Bundle
@@ -190,7 +190,7 @@
(phase archive abstractionC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.with_type Any)) inputsC)
_ (analysis/type.infer Any)]
- (in {analysis.#Extension extension (list& abstractionA inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list abstractionA inputsA)})))]))
(def: php::pack
Handler
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 f35ad7128..ceecbce4f 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
@@ -158,9 +158,9 @@
(phase archive objectC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.expecting Any)) inputsC)
_ (analysis/type.inference .Any)]
- (in {analysis.#Extension extension (list& (analysis.text methodC)
- objectA
- inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list (analysis.text methodC)
+ objectA
+ inputsA)})))]))
(def: bundle::object
Bundle
@@ -200,7 +200,7 @@
(phase archive abstractionC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.expecting Any)) inputsC)
_ (analysis/type.inference Any)]
- (in {analysis.#Extension extension (list& abstractionA inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list abstractionA inputsA)})))]))
(def: python::function
Handler
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 a102f6b29..8af81e312 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
@@ -154,9 +154,9 @@
(phase archive objectC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.expecting Any)) inputsC)
_ (analysis/type.inference .Any)]
- (in {analysis.#Extension extension (list& (analysis.text methodC)
- objectA
- inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list (analysis.text methodC)
+ objectA
+ inputsA)})))]))
(def: bundle::object
Bundle
@@ -187,7 +187,7 @@
(phase archive abstractionC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.expecting Any)) inputsC)
_ (analysis/type.inference Any)]
- (in {analysis.#Extension extension (list& abstractionA inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list abstractionA inputsA)})))]))
(def: ruby::import
Handler
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 c1c425142..da2c2e828 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
@@ -147,7 +147,7 @@
(phase archive abstractionC))
inputsA (monad.each ! (|>> (phase archive) (analysis/type.with_type Any)) inputsC)
_ (analysis/type.infer Any)]
- (in {analysis.#Extension extension (list& abstractionA inputsA)})))]))
+ (in {analysis.#Extension extension (partial_list abstractionA inputsA)})))]))
(def: .public bundle
Bundle
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 ab72fe131..0906183ef 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
@@ -658,7 +658,7 @@
(jvm.analyse_static_method analyse archive mapping method)
{#Overriden_Method method}
- (jvm.analyse_overriden_method analyse archive selfT mapping (list& super interfaces) method)
+ (jvm.analyse_overriden_method analyse archive selfT mapping (partial_list super interfaces) method)
{#Abstract_Method method}
(jvm.analyse_abstract_method analyse archive method))))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/jvm/host.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/jvm/host.lux
index 45c374faa..f5fbdaf17 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/jvm/host.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/jvm/host.lux
@@ -1230,8 +1230,8 @@
(name.internal (..reflection super_class))
(list#each (|>> ..reflection name.internal) super_interfaces)
(foreign.variables total_environment)
- (list& (..with_anonymous_init class total_environment super_class inputsTI)
- methods!)
+ (partial_list (..with_anonymous_init class total_environment super_class inputsTI)
+ methods!)
(sequence.sequence)))
.let [artifact [anonymous_class_name bytecode]]
_ (//////generation.execute! artifact)
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/php/common.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/php/common.lux
index dc7b0f38b..1caff3899 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/php/common.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/generation/php/common.lux
@@ -83,19 +83,19 @@
conditionals))
.let [foreigns (|> conditionals
(list#each (|>> product.right synthesis.path/then //case.dependencies))
- (list& (//case.dependencies (synthesis.path/then else)))
+ (partial_list (//case.dependencies (synthesis.path/then else)))
list.together
(set.of_list _.hash)
set.list)
@expression (_.constant (reference.artifact [context_module context_artifact]))
- directive (_.define_function @expression (list& (_.parameter @input) (list#each _.reference foreigns))
+ directive (_.define_function @expression (partial_list (_.parameter @input) (list#each _.reference foreigns))
(list#mix (function (_ [test then] else)
(_.if test (_.return then) else))
(_.return elseG)
conditionalsG))]
_ (generation.execute! directive)
_ (generation.save! context_artifact directive)]
- (in (_.apply/* (list& inputG foreigns) @expression))))]))
+ (in (_.apply/* (partial_list inputG foreigns) @expression))))]))
(def: lux_procs
Bundle
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/case.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/case.lux
index fbad56663..43ca63829 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/case.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/case.lux
@@ -111,19 +111,19 @@
(-> _.Tag Bit Nat (Maybe (Expression Any)) (Expression Any))
(.let [<failure_condition> (_.eq/2 [@variant @temp])]
(_.let (list [@variant ..peek])
- (list& (_.setq @temp (|> idx <prep> .int _.int (//runtime.sum//get @variant <flag>)))
- (.if simple?
- (_.when <failure_condition>
- (_.go @fail))
- (_.if <failure_condition>
- (_.go @fail)
- (..push! @temp)))
- (.case next!
- {.#Some next!}
- (list next!)
-
- {.#None}
- (list))))))]
+ (partial_list (_.setq @temp (|> idx <prep> .int _.int (//runtime.sum//get @variant <flag>)))
+ (.if simple?
+ (_.when <failure_condition>
+ (_.go @fail))
+ (_.if <failure_condition>
+ (_.go @fail)
+ (..push! @temp)))
+ (.case next!
+ {.#Some next!}
+ (list next!)
+
+ {.#None}
+ (list))))))]
[left_choice _.nil (<|)]
[right_choice (_.string "") ++]
@@ -255,10 +255,10 @@
(list#each (function (_ register)
[(..register register)
_.nil])))]]
- (in (_.let (list& [@cursor (_.list/* (list initG))]
- [@savepoint (_.list/* (list))]
- [@temp _.nil]
- [$output _.nil]
- storage)
+ (in (_.let (partial_list [@cursor (_.list/* (list initG))]
+ [@savepoint (_.list/* (list))]
+ [@temp _.nil]
+ [$output _.nil]
+ storage)
(list pattern_matching!
$output)))))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/loop.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/loop.lux
index acbab199d..29ad332ab 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/loop.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/common_lisp/loop.lux
@@ -1,36 +1,36 @@
(.using
- [library
- [lux {"-" Scope}
- [abstract
- ["[0]" monad {"+" do}]]
- [data
- ["[0]" product]
- [text
- ["%" format {"+" format}]]
- [collection
- ["[0]" list ("[1]#[0]" functor)]]]
- [math
- [number
- ["n" nat]]]
- [target
- ["_" common_lisp {"+" Expression}]]]]
- ["[0]" // "_"
- [runtime {"+" Operation Phase Generator}]
- ["[1][0]" case]
+ [library
+ [lux {"-" Scope}
+ [abstract
+ ["[0]" monad {"+" do}]]
+ [data
+ ["[0]" product]
+ [text
+ ["%" format {"+" format}]]
+ [collection
+ ["[0]" list ("[1]#[0]" functor)]]]
+ [math
+ [number
+ ["n" nat]]]
+ [target
+ ["_" common_lisp {"+" Expression}]]]]
+ ["[0]" // "_"
+ [runtime {"+" Operation Phase Generator}]
+ ["[1][0]" case]
+ ["/[1]" // "_"
+ ["[1][0]" reference]
["/[1]" // "_"
- ["[1][0]" reference]
+ [synthesis
+ ["[0]" case]]
["/[1]" // "_"
- [synthesis
- ["[0]" case]]
- ["/[1]" // "_"
- ["[0]"synthesis {"+" Scope Synthesis}]
- ["[1][0]" generation]
- ["//[1]" /// "_"
- ["[1][0]" phase]
- [meta
- [archive {"+" Archive}]]
- [reference
- [variable {"+" Register}]]]]]]])
+ ["[0]"synthesis {"+" Scope Synthesis}]
+ ["[1][0]" generation]
+ ["//[1]" /// "_"
+ ["[1][0]" phase]
+ [meta
+ [archive {"+" Archive}]]
+ [reference
+ [variable {"+" Register}]]]]]]])
(def: .public (scope expression archive [start initsS+ bodyS])
(Generator (Scope Synthesis))
@@ -53,7 +53,7 @@
(list#each (function (_ [idx init])
[(|> idx (n.+ start) //case.register)
init]))
- (list& [@output _.nil]))
+ (partial_list [@output _.nil]))
(list (_.tagbody (list @scope
(_.setq @output bodyG)))
@output))))))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function.lux
index 7fd639b8f..1de6aba52 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function.lux
@@ -77,15 +77,15 @@
(list#composite (/foreign.variables environment)
(/partial.variables arity)))
methods (is (List (Resource Method))
- (list& (/init.method classT environment arity)
- (/reset.method classT environment arity)
- (if (arity.multiary? arity)
- (|> (n.min arity /arity.maximum)
- list.indices
- (list#each (|>> ++ (/apply.method classT environment arity @begin body)))
- (list& (/implementation.method classT arity @begin body)))
- (list (/implementation.method classT arity @begin body)
- (/apply.method classT environment arity @begin body 1)))))]
+ (partial_list (/init.method classT environment arity)
+ (/reset.method classT environment arity)
+ (if (arity.multiary? arity)
+ (|> (n.min arity /arity.maximum)
+ list.indices
+ (list#each (|>> ++ (/apply.method classT environment arity @begin body)))
+ (partial_list (/implementation.method classT arity @begin body)))
+ (list (/implementation.method classT arity @begin body)
+ (/apply.method classT environment arity @begin body 1)))))]
(do phase.monad
[instance (/new.instance generate archive classT environment arity)]
(in [fields methods instance]))))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/implementation.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/implementation.lux
index 924a2e21d..165c3e502 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/implementation.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/implementation.lux
@@ -31,7 +31,7 @@
(def: .public (type :it: arity)
(-> (Type Class) Arity (Type category.Method))
(type.method [(list)
- (list& :it: (list.repeated arity ////type.value))
+ (partial_list :it: (list.repeated arity ////type.value))
////type.value
(list)]))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/init.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/init.lux
index e6734dfcb..554f0cb8e 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/init.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/function/method/init.lux
@@ -53,7 +53,7 @@
(type.method [(list)
(list#composite (///foreign.closure environment)
(if (arity.multiary? arity)
- (list& ///arity.type (..partials arity))
+ (partial_list ///arity.type (..partials arity))
(list)))
type.void
(list)]))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/runtime.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/runtime.lux
index 789884c63..136c1c359 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/runtime.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/jvm/runtime.lux
@@ -592,11 +592,11 @@
(_.aload arity)
(_.invokevirtual //function.class ..apply::name (..apply::type //function/arity.minimum))
_.areturn))})))
- (list& (method.method (modifier#composite method.public method.abstract)
- ..apply::name
- #0 (..apply::type //function/arity.minimum)
- (list)
- {.#None})))
+ (partial_list (method.method (modifier#composite method.public method.abstract)
+ ..apply::name
+ #0 (..apply::type //function/arity.minimum)
+ (list)
+ {.#None})))
<init>::method (method.method method.public "<init>"
#0 //function.init
(list)
@@ -627,7 +627,7 @@
{.#None}
(name.internal (..reflection ^Object)) (list)
(list partial_count)
- (list& <init>::method apply::method+)
+ (partial_list <init>::method apply::method+)
sequence.empty))]
(do ////.monad
[_ (generation.execute! [class bytecode])
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/function.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/function.lux
index bd95510e2..5e6c9ea30 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/function.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/php/function.lux
@@ -61,7 +61,7 @@
(list#each (|>> product.left ..capture)))]
[(_.set! @selfG (_.closure (list) (list#each _.parameter @inits)
($_ _.then
- (_.set! @selfL (_.closure (list& (_.reference @selfL) (list#each _.reference @inits))
+ (_.set! @selfL (_.closure (partial_list (_.reference @selfL) (list#each _.reference @inits))
(list)
body!))
(_.return @selfL))))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/procedure/host.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/procedure/host.lux
index 5a1b6479f..e1b8b84e6 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/procedure/host.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/generation/r/procedure/host.lux
@@ -36,7 +36,7 @@
... (def: (lua//call proc translate inputs)
... (-> Text @.Proc)
... (case inputs
-... (pattern (list& functionS argsS+))
+... (pattern (partial_list functionS argsS+))
... (do [@ macro.Monad<Meta>]
... [functionO (translate functionS)
... argsO+ (monad.each @ translate argsS+)]
@@ -56,7 +56,7 @@
... (def: (table//call proc translate inputs)
... (-> Text @.Proc)
... (case inputs
-... (pattern (list& tableS [_ {.#Text field}] argsS+))
+... (pattern (partial_list tableS [_ {.#Text field}] argsS+))
... (do [@ macro.Monad<Meta>]
... [tableO (translate tableS)
... argsO+ (monad.each @ translate argsS+)]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/case.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/case.lux
index 3412ae778..0f8d92144 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/case.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/case.lux
@@ -231,7 +231,7 @@
<continue>
sub_members
- (list& <member> sub_members))
+ (partial_list <member> sub_members))
_
<failure>)))))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/loop.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/loop.lux
index a8991f643..c11213340 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/loop.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/synthesis/loop.lux
@@ -186,7 +186,7 @@
<application>)))
... TODO: Stop relying on this custom code.
- (pattern {/.#Extension ["lux syntax char case!" (list& input else matches)]})
+ (pattern {/.#Extension ["lux syntax char case!" (partial_list input else matches)]})
(if return?
(do [! maybe.monad]
[input (again false input)
@@ -203,7 +203,7 @@
(again false match)))
matches)
else (again return? else)]
- (in {/.#Extension ["lux syntax char case!" (list& input else matches)]}))
+ (in {/.#Extension ["lux syntax char case!" (partial_list input else matches)]}))
{.#None})
{/.#Extension [name args]}
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis.lux
index 3b1a2ad84..9ecea955a 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis.lux
@@ -454,8 +454,8 @@
(implementation: (path'_hash super)
(All (_ a) (-> (Hash a) (Hash (Path' a))))
- (def: &equivalence
- (..path'_equivalence (# super &equivalence)))
+ (def: equivalence
+ (..path'_equivalence (# super equivalence)))
(def: (hash value)
(case value
@@ -529,8 +529,8 @@
(implementation: (branch_hash super)
(All (_ a) (-> (Hash a) (Hash (Branch a))))
- (def: &equivalence
- (..branch_equivalence (# super &equivalence)))
+ (def: equivalence
+ (..branch_equivalence (# super equivalence)))
(def: (hash value)
(case value
@@ -582,8 +582,8 @@
(implementation: (loop_hash super)
(All (_ a) (-> (Hash a) (Hash (Loop a))))
- (def: &equivalence
- (..loop_equivalence (# super &equivalence)))
+ (def: equivalence
+ (..loop_equivalence (# super equivalence)))
(def: (hash value)
(case value
@@ -620,8 +620,8 @@
(implementation: (function_hash super)
(All (_ a) (-> (Hash a) (Hash (Function a))))
- (def: &equivalence
- (..function_equivalence (# super &equivalence)))
+ (def: equivalence
+ (..function_equivalence (# super equivalence)))
(def: (hash value)
(case value
@@ -655,8 +655,8 @@
(implementation: (control_hash super)
(All (_ a) (-> (Hash a) (Hash (Control a))))
- (def: &equivalence
- (..control_equivalence (# super &equivalence)))
+ (def: equivalence
+ (..control_equivalence (# super equivalence)))
(def: (hash value)
(case value
@@ -692,7 +692,7 @@
(implementation: .public hash
(Hash Synthesis)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (hash value)
(let [again_hash [..equivalence hash]]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access.lux
index cb3e3f50a..bdc53c382 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access.lux
@@ -35,4 +35,4 @@
(def: .public equivalence
(Equivalence Access)
- (# ..hash &equivalence))
+ (# ..hash equivalence))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/member.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/member.lux
index e6c9fb680..128f12c26 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/member.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/member.lux
@@ -31,4 +31,4 @@
(def: .public equivalence
(Equivalence Member)
- (# ..hash &equivalence))
+ (# ..hash equivalence))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/side.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/side.lux
index 045681ac2..a694b7c45 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/side.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/access/side.lux
@@ -31,4 +31,4 @@
(def: .public equivalence
(Equivalence Side)
- (# ..hash &equivalence))
+ (# ..hash equivalence))
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/simple.lux b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/simple.lux
index 05b5201f8..741088fb0 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/simple.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/synthesis/simple.lux
@@ -60,7 +60,7 @@
(implementation: .public hash
(Hash Simple)
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: hash
(|>> (pipe.case
diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive/unit.lux b/stdlib/source/library/lux/tool/compiler/meta/archive/unit.lux
index 9412bbb0b..460757c42 100644
--- a/stdlib/source/library/lux/tool/compiler/meta/archive/unit.lux
+++ b/stdlib/source/library/lux/tool/compiler/meta/archive/unit.lux
@@ -30,7 +30,7 @@
(def: .public equivalence
(Equivalence ID)
- (# ..hash &equivalence))
+ (# ..hash equivalence))
(def: .public none
(Set ID)
diff --git a/stdlib/source/library/lux/tool/compiler/meta/cache/dependency/artifact.lux b/stdlib/source/library/lux/tool/compiler/meta/cache/dependency/artifact.lux
index 1ab3be9eb..d87c2ccd6 100644
--- a/stdlib/source/library/lux/tool/compiler/meta/cache/dependency/artifact.lux
+++ b/stdlib/source/library/lux/tool/compiler/meta/cache/dependency/artifact.lux
@@ -149,7 +149,7 @@
references)
{synthesis.#Apply function arguments}
- (|> (list& function arguments)
+ (|> (partial_list function arguments)
(list#each references)
list#conjoint)))
@@ -203,7 +203,7 @@
[mandatory_dependencies
all_dependencies])
[(if mandatory?
- (list& artifact_id mandatory_dependencies)
+ (partial_list artifact_id mandatory_dependencies)
mandatory_dependencies)
(dictionary.has artifact_id dependencies all_dependencies)])
[(list)
diff --git a/stdlib/source/library/lux/tool/compiler/meta/packager/ruby.lux b/stdlib/source/library/lux/tool/compiler/meta/packager/ruby.lux
index ed360caec..1f0506a00 100644
--- a/stdlib/source/library/lux/tool/compiler/meta/packager/ruby.lux
+++ b/stdlib/source/library/lux/tool/compiler/meta/packager/ruby.lux
@@ -96,8 +96,8 @@
(is _.Statement)
_.code
(# utf8.codec encoded))]
- (in (list& [module_id [(..module_file module_id) entry_content]]
- sink))))))
+ (in (partial_list [module_id [(..module_file module_id) entry_content]]
+ sink))))))
(def: .public main_file
"main.rb")
diff --git a/stdlib/source/library/lux/tool/compiler/phase.lux b/stdlib/source/library/lux/tool/compiler/phase.lux
index e09552d2c..ff07d7226 100644
--- a/stdlib/source/library/lux/tool/compiler/phase.lux
+++ b/stdlib/source/library/lux/tool/compiler/phase.lux
@@ -38,7 +38,7 @@
(implementation: .public monad
(All (_ s) (Monad (Operation s)))
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in it)
(function (_ state)
diff --git a/stdlib/source/library/lux/tool/compiler/reference.lux b/stdlib/source/library/lux/tool/compiler/reference.lux
index 3e962f14f..083f7e568 100644
--- a/stdlib/source/library/lux/tool/compiler/reference.lux
+++ b/stdlib/source/library/lux/tool/compiler/reference.lux
@@ -44,7 +44,7 @@
(implementation: .public hash
(Hash Reference)
- (def: &equivalence
+ (def: equivalence
..equivalence)
(def: (hash value)
diff --git a/stdlib/source/library/lux/tool/compiler/reference/variable.lux b/stdlib/source/library/lux/tool/compiler/reference/variable.lux
index a9d4f432e..248398d35 100644
--- a/stdlib/source/library/lux/tool/compiler/reference/variable.lux
+++ b/stdlib/source/library/lux/tool/compiler/reference/variable.lux
@@ -40,7 +40,7 @@
(implementation: .public hash
(Hash Variable)
- (def: &equivalence
+ (def: equivalence
..equivalence)
(def: hash
diff --git a/stdlib/source/library/lux/type.lux b/stdlib/source/library/lux/type.lux
index 8bd91191c..f82207ad0 100644
--- a/stdlib/source/library/lux/type.lux
+++ b/stdlib/source/library/lux/type.lux
@@ -49,7 +49,7 @@
(case type
{.#Function in out'}
(.let [[ins out] (flat_function out')]
- [(list& in ins) out])
+ [(partial_list in ins) out])
_
[(list) type]))
@@ -69,7 +69,7 @@
(-> Type (List Type))
(case type
{<tag> left right}
- (list& left (<name> right))
+ (partial_list left (<name> right))
_
(list type)))]
@@ -234,12 +234,12 @@
(^.template [<tag>]
[{<tag> env body}
(|> body
- (reduced (list& func param env))
+ (reduced (partial_list func param env))
(applied params'))])
([.#UnivQ] [.#ExQ])
{.#Apply A F}
- (applied (list& A params) F)
+ (applied (partial_list A params) F)
{.#Named name unnamed}
(applied params unnamed)
diff --git a/stdlib/source/library/lux/type/abstract.lux b/stdlib/source/library/lux/type/abstract.lux
index 7b8290f11..2b60eb1a4 100644
--- a/stdlib/source/library/lux/type/abstract.lux
+++ b/stdlib/source/library/lux/type/abstract.lux
@@ -233,14 +233,14 @@
type_varsC
abstraction_declaration
representation_declaration])]
- (in (list& (` (type: (~ export_policy) (~ abstraction_declaration)
- (Primitive (~ (code.text (abstraction_type_name [current_module name])))
- [(~+ type_varsC)])))
- (` (type: (~ representation_declaration)
- (~ representation_type)))
- ($_ list#composite
- primitives
- (list (` ((~! ..pop!)))))))))
+ (in (partial_list (` (type: (~ export_policy) (~ abstraction_declaration)
+ (Primitive (~ (code.text (abstraction_type_name [current_module name])))
+ [(~+ type_varsC)])))
+ (` (type: (~ representation_declaration)
+ (~ representation_type)))
+ ($_ list#composite
+ primitives
+ (list (` ((~! ..pop!)))))))))
(type: (Selection a)
(Variant
@@ -268,14 +268,14 @@
(case selection
{#Specific specific name}
(let [g!var (code.local name)]
- (in (list& g!var
- (` (.let [(~ g!var) (..representation (~ specific) (~ g!var))]
- (~ body)))
- branches)))
+ (in (partial_list g!var
+ (` (.let [(~ g!var) (..representation (~ specific) (~ g!var))]
+ (~ body)))
+ branches)))
{#Current name}
(let [g!var (code.local name)]
- (in (list& g!var
- (` (.let [(~ g!var) (..representation (~ g!var))]
- (~ body)))
- branches)))))
+ (in (partial_list g!var
+ (` (.let [(~ g!var) (..representation (~ g!var))]
+ (~ body)))
+ branches)))))
diff --git a/stdlib/source/library/lux/type/check.lux b/stdlib/source/library/lux/type/check.lux
index 31d604f22..51797be2d 100644
--- a/stdlib/source/library/lux/type/check.lux
+++ b/stdlib/source/library/lux/type/check.lux
@@ -87,7 +87,7 @@
(implementation: .public apply
(Apply Check)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (on fa ff)
(function (_ context)
@@ -108,7 +108,7 @@
(implementation: .public monad
(Monad Check)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in x)
(function (_ context)
@@ -312,7 +312,7 @@
{.#Var next}
(if (!n#= start next)
{try.#Success [context output]}
- (again next (list& next output)))
+ (again next (partial_list next output)))
_
{try.#Success [context (list)]})
@@ -353,7 +353,7 @@
(if (n.< 2 (set.size existing_aliases))
(..except ..cannot_identify [@])
(do !
- [.let [forbidden_aliases (set.of_list n.hash (list& @ aliases))
+ [.let [forbidden_aliases (set.of_list n.hash (partial_list @ aliases))
allowed_aliases (set.difference forbidden_aliases existing_aliases)]]
(case (set.list allowed_aliases)
{.#Item identity _}
@@ -374,7 +374,7 @@
(let [[@var :var:] in]
(if (n.= @ @var)
out
- (list& in out)))))
+ (partial_list in out)))))
(is (List [Nat (Maybe Type)])
(list)))
context)
@@ -396,9 +396,9 @@
[_ (re_bind' {.#None} @other)]
(erase! @me))
- (pattern (list& @prev _))
+ (pattern (partial_list @prev _))
(case (list.reversed ring)
- (pattern (list& @me @next _))
+ (pattern (partial_list @me @next _))
(do !
[_ (re_bind {.#Var @next} @prev)
_ (re_bind {.#Var @prev} @next)]
diff --git a/stdlib/source/library/lux/type/resource.lux b/stdlib/source/library/lux/type/resource.lux
index d31a7e1dd..95d88ab50 100644
--- a/stdlib/source/library/lux/type/resource.lux
+++ b/stdlib/source/library/lux/type/resource.lux
@@ -119,7 +119,7 @@
_ (<>.assertion (exception.error ..index_cannot_be_repeated head)
(not (set.member? seen head)))
tail (again (set.has head seen))]
- (in (list& head tail))))))))
+ (in (partial_list head tail))))))))
(def: (no_op monad)
(All (_ m) (-> (Monad m) (Linear m Any)))
diff --git a/stdlib/source/library/lux/type/unit.lux b/stdlib/source/library/lux/type/unit.lux
index 4527a5160..dd8430421 100644
--- a/stdlib/source/library/lux/type/unit.lux
+++ b/stdlib/source/library/lux/type/unit.lux
@@ -191,7 +191,7 @@
(implementation: .public order
(All (_ unit) (Order (Qty unit)))
- (def: &equivalence ..equivalence)
+ (def: equivalence ..equivalence)
(def: (< reference sample)
(i.< (..out' reference) (..out' sample))))
@@ -199,6 +199,6 @@
(implementation: .public enum
(All (_ unit) (Enum (Qty unit)))
- (def: &order ..order)
+ (def: order ..order)
(def: succ (|>> ..out' ++ ..in'))
(def: pred (|>> ..out' -- ..in')))
diff --git a/stdlib/source/library/lux/world/db/jdbc/output.lux b/stdlib/source/library/lux/world/db/jdbc/output.lux
index d6ca98a09..6de6b9d57 100644
--- a/stdlib/source/library/lux/world/db/jdbc/output.lux
+++ b/stdlib/source/library/lux/world/db/jdbc/output.lux
@@ -1,18 +1,18 @@
(.using
- [library
- [lux {"-" and int}
- [ffi {"+" import:}]
- [control
- [functor {"+" Functor}]
- [apply {"+" Apply}]
- [monad {"+" Monad do}]
- ["ex" exception]
- ["[0]" try {"+" Try}]]
- [time
- ["[0]" instant {"+" Instant}]]
- ["[0]" io {"+" IO}]
- [world
- [binary {"+" Binary}]]]])
+ [library
+ [lux {"-" and int}
+ [ffi {"+" import:}]
+ [control
+ [functor {"+" Functor}]
+ [apply {"+" Apply}]
+ [monad {"+" Monad do}]
+ ["ex" exception]
+ ["[0]" try {"+" Try}]]
+ [time
+ ["[0]" instant {"+" Instant}]]
+ ["[0]" io {"+" IO}]
+ [world
+ [binary {"+" Binary}]]]])
(import: java/lang/String)
@@ -65,7 +65,7 @@
(implementation: .public apply
(Apply Output)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (apply ff fa)
(function (_ [idx rs])
@@ -84,7 +84,7 @@
(implementation: .public monad
(Monad Output)
- (def: &functor ..functor)
+ (def: functor ..functor)
(def: (in a)
(function (_ [idx rs])
diff --git a/stdlib/source/library/lux/world/output/video/resolution.lux b/stdlib/source/library/lux/world/output/video/resolution.lux
index 6e6bf1036..8883460bc 100644
--- a/stdlib/source/library/lux/world/output/video/resolution.lux
+++ b/stdlib/source/library/lux/world/output/video/resolution.lux
@@ -21,7 +21,7 @@
(def: .public equivalence
(Equivalence Resolution)
- (# ..hash &equivalence))
+ (# ..hash equivalence))
... https://en.wikipedia.org/wiki/Display_resolution#Common_display_resolutions
(template [<name> <width> <height>]
diff --git a/stdlib/source/library/lux/world/shell.lux b/stdlib/source/library/lux/world/shell.lux
index e94c0dda4..47302a81a 100644
--- a/stdlib/source/library/lux/world/shell.lux
+++ b/stdlib/source/library/lux/world/shell.lux
@@ -296,7 +296,7 @@
(def: (execute [environment working_directory the_command arguments])
(do [! (try.with io.monad)]
- [.let [builder (|> (list& the_command arguments)
+ [.let [builder (|> (partial_list the_command arguments)
..jvm::arguments_array
java/lang/ProcessBuilder::new
(java/lang/ProcessBuilder::directory (java/io/File::new (ffi.as_string working_directory))))]
diff --git a/stdlib/source/program/aedifex/artifact.lux b/stdlib/source/program/aedifex/artifact.lux
index b7342a650..c1c707a98 100644
--- a/stdlib/source/program/aedifex/artifact.lux
+++ b/stdlib/source/program/aedifex/artifact.lux
@@ -41,12 +41,12 @@
(def: .public equivalence
(Equivalence Artifact)
- (# ..hash &equivalence))
+ (# ..hash equivalence))
(implementation: .public order
(Order Artifact)
- (def: &equivalence
+ (def: equivalence
..equivalence)
(def: (< reference subject)
diff --git a/stdlib/source/program/aedifex/command/auto.lux b/stdlib/source/program/aedifex/command/auto.lux
index e3cfaac74..7ae0c53d3 100644
--- a/stdlib/source/program/aedifex/command/auto.lux
+++ b/stdlib/source/program/aedifex/command/auto.lux
@@ -33,7 +33,7 @@
(# ! each (|>> (try.else (list))
(monad.each ! (targets fs))))
(# ! conjoint)
- (# ! each (|>> list.together (list& path))))))
+ (# ! each (|>> list.together (partial_list path))))))
(def: .public delay
Nat
diff --git a/stdlib/source/program/aedifex/command/build.lux b/stdlib/source/program/aedifex/command/build.lux
index 4538a2834..4ff240f96 100644
--- a/stdlib/source/program/aedifex/command/build.lux
+++ b/stdlib/source/program/aedifex/command/build.lux
@@ -143,7 +143,7 @@
(implementation: version_order
(Order Version)
- (def: &equivalence
+ (def: equivalence
text.equivalence)
(def: (< left right)
@@ -218,7 +218,8 @@
{try.#Failure error}
(if (exception.match? shell.no_more_output error)
(write! {try.#Success []})
- (async.upon! write! (console.write_line error console)))
+ (async.upon! write! (is (Async (Try Any))
+ (console.write_line error console))))
{try.#Success line}
(async.upon! (function (_ outcome)
@@ -229,7 +230,8 @@
{try.#Success _}
(async.upon! again
(# process <capability> []))))
- (console.write_line line console)))))
+ (is (Async (Try Any))
+ (console.write_line line console))))))
io.run!)]
read!))]
@@ -269,9 +271,9 @@
_
(revised ///runtime.#parameters
- (|>> (list& "-cp" (..jvm_class_path host_dependencies)
- "--add-opens" "java.base/java.lang=ALL-UNNAMED"
- "-Xss16m"))
+ (|>> (partial_list "-cp" (..jvm_class_path host_dependencies)
+ "--add-opens" "java.base/java.lang=ALL-UNNAMED"
+ "-Xss16m"))
runtime)))
(def: .public (do! console program fs shell resolution)
@@ -290,26 +292,28 @@
(do ///action.monad
[[resolution lux] (async#in (..lux resolution (the ///.#lux profile)))
.let [host_dependencies (..host_dependencies fs home resolution)
- [[command lux_params] output] (case lux
- {#JVM dependency}
- [(|> (the ///.#java profile)
- (has ///runtime.#parameters (list "program._"))
- (with_jvm_class_path {.#Item (..path fs home dependency) host_dependencies}))
- "program.jar"]
-
- (^.template [<tag> <runtime> <program>]
- [{<tag> dependency}
- [(|> dependency
- (..path fs home)
- (///runtime.for (the <runtime> profile)))
- <program>]])
- ([#JS ///.#js "program.js"]
- [#Python ///.#java "program.py"]
- [#Lua ///.#java "program.lua"]
- [#Ruby ///.#java (file.rooted fs "program" ruby_packager.main_file)]))
+ [[command_environment command lux_params] output]
+ (case lux
+ {#JVM dependency}
+ [(|> (the ///.#java profile)
+ (has ///runtime.#parameters (list "program._"))
+ (with_jvm_class_path {.#Item (..path fs home dependency) host_dependencies}))
+ "program.jar"]
+
+ (^.template [<tag> <runtime> <program>]
+ [{<tag> dependency}
+ [(|> dependency
+ (..path fs home)
+ (///runtime.for (the <runtime> profile)))
+ <program>]])
+ ([#JS ///.#js "program.js"]
+ [#Python ///.#java "program.py"]
+ [#Lua ///.#java "program.lua"]
+ [#Ruby ///.#java (file.rooted fs "program" ruby_packager.main_file)]))
/ (# fs separator)
cache_directory (format working_directory / target)]
- _ (console.write_line ..start console)
+ _ (is (Async (Try Any))
+ (console.write_line ..start console))
.let [full_parameters (list.together (list lux_params
(list "build")
(..plural "--library" (..libraries fs home resolution))
@@ -319,17 +323,18 @@
(..singular "--target" cache_directory)
(..singular "--module" program_module)
(..singular "--configuration" (configuration.format (the ///.#configuration profile)))))]
- process (# shell execute [environment
+ process (# shell execute [(dictionary.composite command_environment environment)
working_directory
command
full_parameters])
_ (..log_output! console process)
_ (..log_error! console process)
exit (# process await [])
- _ (console.write_line (if (i.= shell.normal exit)
- ..success
- ..failure)
- console)]
+ _ (is (Async (Try Any))
+ (console.write_line (if (i.= shell.normal exit)
+ ..success
+ ..failure)
+ console))]
(in [exit
lux
(format cache_directory / output)])))))))
diff --git a/stdlib/source/program/aedifex/command/clean.lux b/stdlib/source/program/aedifex/command/clean.lux
index 16bfce404..98f1461a8 100644
--- a/stdlib/source/program/aedifex/command/clean.lux
+++ b/stdlib/source/program/aedifex/command/clean.lux
@@ -20,11 +20,12 @@
(def: (clean_files! fs root)
(-> (file.System Async) Path (Async (Try Any)))
- (let [! ///action.monad]
- (|> root
- (# fs directory_files)
- (# ! each (monad.each ! (# fs delete)))
- (# ! conjoint))))
+ (do [! ///action.monad]
+ [_ (|> root
+ (# fs directory_files)
+ (# ! each (monad.each ! (# fs delete)))
+ (# ! conjoint))]
+ (in [])))
(def: .public success
(-> ///.Target Text)
diff --git a/stdlib/source/program/aedifex/command/deploy.lux b/stdlib/source/program/aedifex/command/deploy.lux
index eeecd1f8d..6fcd84e21 100644
--- a/stdlib/source/program/aedifex/command/deploy.lux
+++ b/stdlib/source/program/aedifex/command/deploy.lux
@@ -77,4 +77,5 @@
///package.#pom [pom
pom_data
(///dependency/status.verified pom_data)]]))]
- (console.write_line ..success console)))
+ (is (Async (Try Any))
+ (console.write_line ..success console))))
diff --git a/stdlib/source/program/aedifex/command/install.lux b/stdlib/source/program/aedifex/command/install.lux
index 6933264d3..41338674d 100644
--- a/stdlib/source/program/aedifex/command/install.lux
+++ b/stdlib/source/program/aedifex/command/install.lux
@@ -73,7 +73,9 @@
///package.#pom [pom
pom_data
(///dependency/status.verified pom_data)]]))]
- (console.write_line ..success console))
+ (is (Async (Try Any))
+ (console.write_line ..success console)))
_
- (console.write_line ..failure console)))
+ (is (Async (Try Any))
+ (console.write_line ..failure console))))
diff --git a/stdlib/source/program/aedifex/command/pom.lux b/stdlib/source/program/aedifex/command/pom.lux
index 20bad61fe..23c25e7e1 100644
--- a/stdlib/source/program/aedifex/command/pom.lux
+++ b/stdlib/source/program/aedifex/command/pom.lux
@@ -1,26 +1,26 @@
(.using
- [library
- [lux "*"
- [abstract
- [monad {"+" do}]]
- [control
- ["[0]" try ("[1]#[0]" functor)]
- [concurrency
- ["[0]" async {"+" Async} ("[1]#[0]" monad)]]]
- [data
- [text
- ["%" format {"+" format}]
- [encoding
- ["[0]" utf8]]]
- [format
- ["[0]" xml]]]
- [world
- ["[0]" file]
- ["[0]" console {"+" Console}]]]]
- ["[0]" /// "_"
- [command {"+" Command}]
- ["[1][0]" action]
- ["[1][0]" pom]])
+ [library
+ [lux "*"
+ [abstract
+ [monad {"+" do}]]
+ [control
+ ["[0]" try {"+" Try} ("[1]#[0]" functor)]
+ [concurrency
+ ["[0]" async {"+" Async} ("[1]#[0]" monad)]]]
+ [data
+ [text
+ ["%" format {"+" format}]
+ [encoding
+ ["[0]" utf8]]]
+ [format
+ ["[0]" xml]]]
+ [world
+ ["[0]" file]
+ ["[0]" console {"+" Console}]]]]
+ ["[0]" /// "_"
+ [command {"+" Command}]
+ ["[1][0]" action]
+ ["[1][0]" pom]])
(def: .public success
(format "Successfully created POM file: " ///pom.file))
@@ -32,5 +32,6 @@
(try#each (|>> (# xml.codec encoded)
(# utf8.codec encoded)))
async#in)
- _ (# fs write content ///pom.file)]
- (console.write_line ..success console)))
+ _ (# fs write ///pom.file content)]
+ (is (Async (Try Any))
+ (console.write_line ..success console))))
diff --git a/stdlib/source/program/aedifex/command/test.lux b/stdlib/source/program/aedifex/command/test.lux
index 3df3e0724..e6d36bfd8 100644
--- a/stdlib/source/program/aedifex/command/test.lux
+++ b/stdlib/source/program/aedifex/command/test.lux
@@ -4,8 +4,12 @@
[abstract
[monad {"+" do}]]
[control
+ [try {"+" Try}]
[concurrency
["[0]" async {"+" Async} ("[1]#[0]" monad)]]]
+ [data
+ [collection
+ ["[0]" dictionary]]]
[macro
["^" pattern]]
[math
@@ -41,32 +45,34 @@
(has ///.#program (the ///.#test profile) profile))]
(if (i.= shell.normal build_exit)
(do !
- [_ (console.write_line ..start console)
+ [_ (is (Async (Try Any))
+ (console.write_line ..start console))
.let [host_dependencies (//build.host_dependencies fs home resolution)
- [test_command test_parameters] (case compiler
- {//build.#JVM dependency}
- (|> program
- (///runtime.for (the ///.#java profile))
- (//build.with_jvm_class_path host_dependencies))
+ [command_environment test_command test_parameters] (case compiler
+ {//build.#JVM dependency}
+ (|> program
+ (///runtime.for (the ///.#java profile))
+ (//build.with_jvm_class_path host_dependencies))
- (^.template [<tag> <runtime>]
- [{<tag> artifact}
- (///runtime.for (the <runtime> profile)
- program)])
- ([//build.#JS ///.#js]
- [//build.#Python ///.#python]
- [//build.#Lua ///.#lua]
- [//build.#Ruby ///.#ruby]))]
- process (# shell execute [environment
+ (^.template [<tag> <runtime>]
+ [{<tag> artifact}
+ (///runtime.for (the <runtime> profile)
+ program)])
+ ([//build.#JS ///.#js]
+ [//build.#Python ///.#python]
+ [//build.#Lua ///.#lua]
+ [//build.#Ruby ///.#ruby]))]
+ process (# shell execute [(dictionary.composite command_environment environment)
working_directory
test_command
test_parameters])
_ (//build.log_output! console process)
_ (//build.log_error! console process)
exit (# process await [])
- _ (console.write_line (if (i.= shell.normal exit)
- ..success
- ..failure)
- console)]
+ _ (is (Async (Try Any))
+ (console.write_line (if (i.= shell.normal exit)
+ ..success
+ ..failure)
+ console))]
(in [exit []]))
(in [build_exit []])))))
diff --git a/stdlib/source/program/aedifex/command/version.lux b/stdlib/source/program/aedifex/command/version.lux
index c61e796df..9c40edd97 100644
--- a/stdlib/source/program/aedifex/command/version.lux
+++ b/stdlib/source/program/aedifex/command/version.lux
@@ -2,6 +2,7 @@
[library
[lux "*"
[control
+ [try {"+" Try}]
[concurrency
["[0]" async {"+" Async}]]]
["[0]" meta "_"
@@ -16,5 +17,6 @@
(def: .public (do! console profile)
(-> (Console Async) (Command Any))
- (console.write_line (version.format meta/version.latest)
- console))
+ (is (Async (Try Any))
+ (console.write_line (version.format meta/version.latest)
+ console)))
diff --git a/stdlib/source/program/aedifex/dependency.lux b/stdlib/source/program/aedifex/dependency.lux
index 5bf2e4ef9..4027354d9 100644
--- a/stdlib/source/program/aedifex/dependency.lux
+++ b/stdlib/source/program/aedifex/dependency.lux
@@ -27,12 +27,12 @@
(def: .public equivalence
(Equivalence Dependency)
- (# hash &equivalence))
+ (# hash equivalence))
(implementation: .public order
(Order Dependency)
- (def: &equivalence
+ (def: equivalence
..equivalence)
(def: (< reference subject)
diff --git a/stdlib/source/program/aedifex/dependency/deployment.lux b/stdlib/source/program/aedifex/dependency/deployment.lux
index 735ec1ebd..0b9ca5b83 100644
--- a/stdlib/source/program/aedifex/dependency/deployment.lux
+++ b/stdlib/source/program/aedifex/dependency/deployment.lux
@@ -73,18 +73,18 @@
(-> ///artifact/type.Type Status (List ///artifact/type.Type))
(with_expansions [<sha-1> (format type ///artifact/extension.sha-1)
<md5> (format type ///artifact/extension.md5)]
- (list& type
- (case status
- {///dependency/status.#Unverified}
- (list)
-
- {///dependency/status.#Partial partial}
- (list (case partial
- {.#Left _} <sha-1>
- {.#Right _} <md5>))
-
- {///dependency/status.#Verified _}
- (list <sha-1> <md5>)))))
+ (partial_list type
+ (case status
+ {///dependency/status.#Unverified}
+ (list)
+
+ {///dependency/status.#Partial partial}
+ (list (case partial
+ {.#Left _} <sha-1>
+ {.#Right _} <md5>))
+
+ {///dependency/status.#Verified _}
+ (list <sha-1> <md5>)))))
(def: (update_snapshot [artifact type] now snapshot)
(-> Dependency Instant Metadata (Try Metadata))
diff --git a/stdlib/source/program/aedifex/format.lux b/stdlib/source/program/aedifex/format.lux
index 19800f4d9..b7dd105c1 100644
--- a/stdlib/source/program/aedifex/format.lux
+++ b/stdlib/source/program/aedifex/format.lux
@@ -141,9 +141,13 @@
(` [(~+ (..artifact' artifact))
(~ (code.text type))])))
-(def: (runtime [program parameters])
+(def: (runtime [environment program parameters])
(Format Runtime)
- (` [(~ (code.text program))
+ (` [(~+ (list#each (function (_ [var value])
+ (` [(~ (code.text var))
+ (~ (code.text value))]))
+ (dictionary.entries environment)))
+ (~ (code.text program))
(~+ (list#each code.text parameters))]))
(def: (compiler [definition parameters])
diff --git a/stdlib/source/program/aedifex/hash.lux b/stdlib/source/program/aedifex/hash.lux
index 6b3f973ce..a384c5368 100644
--- a/stdlib/source/program/aedifex/hash.lux
+++ b/stdlib/source/program/aedifex/hash.lux
@@ -131,7 +131,7 @@
{.#Some [head tail]}
(do try.monad
[head (# n.hex decoded head)
- output (binary.write_64! index head output)]
+ output (binary.has_64! index head output)]
(again tail (++ chunk) output))
{.#None}
diff --git a/stdlib/source/program/aedifex/input.lux b/stdlib/source/program/aedifex/input.lux
index e36db11f0..e15fc6552 100644
--- a/stdlib/source/program/aedifex/input.lux
+++ b/stdlib/source/program/aedifex/input.lux
@@ -58,5 +58,5 @@
(do [! try.monad]
[it it
it (..project_parser it)
- it (monad.each ! (//project.profile it) (list& //profile.default profiles))]
+ it (monad.each ! (//project.profile it) (partial_list //profile.default profiles))]
(in (mix.with_monoid //profile.monoid list.mix it)))))))
diff --git a/stdlib/source/program/aedifex/parser.lux b/stdlib/source/program/aedifex/parser.lux
index da92a59d9..094f60507 100644
--- a/stdlib/source/program/aedifex/parser.lux
+++ b/stdlib/source/program/aedifex/parser.lux
@@ -5,7 +5,7 @@
[monad {"+" do}]]
[control
["[0]" maybe]
- ["<>" parser
+ ["<>" parser ("[1]#[0]" functor)
["<[0]>" code {"+" Parser}]]]
[data
["[0]" text]
@@ -184,8 +184,13 @@
(def: runtime
(Parser Runtime)
- (<code>.tuple (<>.and <code>.text
- (<>.some <code>.text))))
+ (let [environment (<>#each (dictionary.of_list text.hash)
+ (<>.some (<code>.tuple (<>.and <code>.text <code>.text))))]
+ (<code>.tuple
+ ($_ <>.and
+ environment
+ <code>.text
+ (<>.some <code>.text)))))
(def: profile
(Parser /.Profile)
diff --git a/stdlib/source/program/aedifex/pom.lux b/stdlib/source/program/aedifex/pom.lux
index 323afbb80..8b4e8e0ed 100644
--- a/stdlib/source/program/aedifex/pom.lux
+++ b/stdlib/source/program/aedifex/pom.lux
@@ -114,9 +114,9 @@
(def: (developer' [name email organization])
(-> /.Developer (List XML))
- (list& (..property "name" name)
- (..property "email" email)
- (|> organization (maybe#each ..developer_organization) (maybe.else (list)))))
+ (partial_list (..property "name" name)
+ (..property "email" email)
+ (|> organization (maybe#each ..developer_organization) (maybe.else (list)))))
(template [<name> <type> <tag>]
[(def: <name>
diff --git a/stdlib/source/program/aedifex/repository/local.lux b/stdlib/source/program/aedifex/repository/local.lux
index b76833c34..ada14650b 100644
--- a/stdlib/source/program/aedifex/repository/local.lux
+++ b/stdlib/source/program/aedifex/repository/local.lux
@@ -1,24 +1,24 @@
(.using
- [library
- [lux "*"
- [abstract
- [monad {"+" do}]]
- [control
- ["[0]" try]
- [concurrency
- ["[0]" async {"+" Async}]]]
- [data
- ["[0]" text
- ["%" format {"+" format}]]]
- [world
- [program {"+" Program}]
- ["[0]" file]
- [net
- ["[0]" uri {"+" URI}]]]]]
- ["[0]" //
- ["/[1]" // "_"
- ["[1][0]" local]
- ["[1][0]" metadata]]])
+ [library
+ [lux "*"
+ [abstract
+ [monad {"+" do}]]
+ [control
+ ["[0]" try {"+" Try}]
+ [concurrency
+ ["[0]" async {"+" Async}]]]
+ [data
+ ["[0]" text
+ ["%" format {"+" format}]]]
+ [world
+ [program {"+" Program}]
+ ["[0]" file]
+ [net
+ ["[0]" uri {"+" URI}]]]]]
+ ["[0]" //
+ ["/[1]" // "_"
+ ["[1][0]" local]
+ ["[1][0]" metadata]]])
(def: (root program /)
(-> (Program Async) Text file.Path)
@@ -50,13 +50,13 @@
(do [! async.monad]
[.let [absolute_path (..absolute_path program (# fs separator) uri)]
? (# fs file? absolute_path)
- _ (if ?
- (in [])
- (case (file.parent fs absolute_path)
- {.#Some parent}
- (file.make_directories async.monad fs parent)
-
- _
- (let [! (try.with async.monad)]
- (# ! in []))))]
- (# fs write content absolute_path))))
+ _ (is (Async (Try Any))
+ (if ?
+ (in {try.#Success []})
+ (case (file.parent fs absolute_path)
+ {.#Some parent}
+ (file.make_directories async.monad fs parent)
+
+ _
+ (in {try.#Success []}))))]
+ (# fs write absolute_path content))))
diff --git a/stdlib/source/program/aedifex/repository/remote.lux b/stdlib/source/program/aedifex/repository/remote.lux
index 782b872f1..313be177b 100644
--- a/stdlib/source/program/aedifex/repository/remote.lux
+++ b/stdlib/source/program/aedifex/repository/remote.lux
@@ -84,8 +84,8 @@
..base_headers
{.#Some [user password]}
- (list& ["Authorization" (//identity.basic_auth user password)]
- ..base_headers)))
+ (partial_list ["Authorization" (//identity.basic_auth user password)]
+ ..base_headers)))
{.#Some content}
http))
_ ((the @http.#body message) {.#Some 0})]
diff --git a/stdlib/source/program/aedifex/runtime.lux b/stdlib/source/program/aedifex/runtime.lux
index 57d18d265..7ba73519d 100644
--- a/stdlib/source/program/aedifex/runtime.lux
+++ b/stdlib/source/program/aedifex/runtime.lux
@@ -8,7 +8,8 @@
["[0]" text
["%" format {"+" format}]]
[collection
- ["[0]" list ("[1]#[0]" monoid)]]]
+ ["[0]" list ("[1]#[0]" monoid)]
+ ["[0]" dictionary {"+" Dictionary}]]]
[macro
["[0]" template]]
[world
@@ -16,28 +17,30 @@
(type: .public Runtime
(Record
- [#program Text
+ [#environment (Dictionary Text Text)
+ #program Text
#parameters (List Text)]))
(def: .public equivalence
(Equivalence Runtime)
($_ product.equivalence
+ (dictionary.equivalence text.equivalence)
text.equivalence
(list.equivalence text.equivalence)
))
-(template [<name> <command> <parameters>]
+(template [<name> <command> <environment> <parameters>]
[(def: .public <name>
Runtime
- [#program <command>
+ [#environment (dictionary.of_list text.hash (`` (list (~~ (template.spliced <environment>)))))
+ #program <command>
#parameters (`` (list (~~ (template.spliced <parameters>))))])]
- [default_java "java" ["--add-opens" "java.base/java.lang=ALL-UNNAMED" "-jar"]]
- [default_js "node" ["--stack_size=8192"]]
- [default_python "python3" []]
- [default_lua "lua" []]
- ... [default_ruby "RUBY_THREAD_VM_STACK_SIZE=15700000 ruby" []]
- [default_ruby "ruby" []]
+ [default_java "java" [] ["--add-opens" "java.base/java.lang=ALL-UNNAMED" "-jar"]]
+ [default_js "node" [] ["--stack_size=8192"]]
+ [default_python "python3" [] []]
+ [default_lua "lua" [] []]
+ [default_ruby "ruby" [["RUBY_THREAD_VM_STACK_SIZE" "15700000"]] []]
)
(def: .public (for runtime path)
diff --git a/stdlib/source/program/compositor.lux b/stdlib/source/program/compositor.lux
index e803ead3f..0d5b056d1 100644
--- a/stdlib/source/program/compositor.lux
+++ b/stdlib/source/program/compositor.lux
@@ -158,7 +158,7 @@
..timed
(do (try.with async.monad)
[.let [[compilation_host_dependencies compilation_libraries compilation_compilers compilation_sources compilation_target compilation_module compilation_configuration] compilation]
- import (import.import (the platform.#&file_system platform) compilation_libraries)
+ import (import.import (the platform.#file_system platform) compilation_libraries)
[state archive phase_wrapper] (sharing [<parameters>]
(Platform <parameters>)
platform
@@ -174,8 +174,8 @@
(Async (Try [Archive (directive.State+ <parameters>)]))
(as_expected (platform.compile lux_compiler phase_wrapper import file_context expander platform compilation [archive state])))
- _ (cache.cache! (the platform.#&file_system platform) file_context archive)
- host_dependencies (..load_host_dependencies (the platform.#&file_system platform) compilation_host_dependencies)
+ _ (cache.cache! (the platform.#file_system platform) file_context archive)
+ host_dependencies (..load_host_dependencies (the platform.#file_system platform) compilation_host_dependencies)
_ (..package! (for @.old (file.async file.default)
@.jvm (file.async file.default)
... TODO: Handle this in a safer manner.
@@ -190,7 +190,7 @@
{cli.#Export export}
(<| (or_crash! "Export failed:")
(do (try.with async.monad)
- [_ (export.export (the platform.#&file_system platform)
+ [_ (export.export (the platform.#file_system platform)
export)]
(in (debug.log! "Export complete!"))))
diff --git a/stdlib/source/specification/lux/abstract/interval.lux b/stdlib/source/specification/lux/abstract/interval.lux
index c767e42fd..3fada2cf8 100644
--- a/stdlib/source/specification/lux/abstract/interval.lux
+++ b/stdlib/source/specification/lux/abstract/interval.lux
@@ -19,5 +19,5 @@
(_.test "No value is bigger than the top."
(@//< @//top sample))
(_.test "No value is smaller than the bottom."
- (order.> @//&order @//bottom sample))
+ (order.> @//order @//bottom sample))
))))
diff --git a/stdlib/source/test/aedifex/cache.lux b/stdlib/source/test/aedifex/cache.lux
index 09e022c89..06b33d138 100644
--- a/stdlib/source/test/aedifex/cache.lux
+++ b/stdlib/source/test/aedifex/cache.lux
@@ -96,7 +96,7 @@
content ..content]
(in [dependency
(has //package.#origin {//repository/origin.#Remote ""} (//package.local pom content))])))))]
- (in (dictionary.of_list //dependency.hash (list& [main_dependency main_package] dependencies)))))
+ (in (dictionary.of_list //dependency.hash (partial_list [main_dependency main_package] dependencies)))))
(def: singular
Test
diff --git a/stdlib/source/test/aedifex/cli.lux b/stdlib/source/test/aedifex/cli.lux
index 0dd70ae6d..3f3f79b1c 100644
--- a/stdlib/source/test/aedifex/cli.lux
+++ b/stdlib/source/test/aedifex/cli.lux
@@ -66,7 +66,7 @@
{/.#Install} (list "install")
{/.#Deploy repository [user password]} (list "deploy" repository user password)
{/.#Compilation compilation} (..compilation_format compilation)
- {/.#Auto compilation} (list& "auto" (..compilation_format compilation))))
+ {/.#Auto compilation} (partial_list "auto" (..compilation_format compilation))))
(def: without_profile
Test
@@ -92,7 +92,7 @@
(_.test "With profile."
(|> expected_command
..format
- (list& "with" expected_profile)
+ (partial_list "with" expected_profile)
(cli.result /.command)
(pipe.case
{try.#Success [actual_profile actual_command]}
diff --git a/stdlib/source/test/lux.lux b/stdlib/source/test/lux.lux
index 9e52c5465..e0798b844 100644
--- a/stdlib/source/test/lux.lux
+++ b/stdlib/source/test/lux.lux
@@ -179,9 +179,9 @@
_
false))
- (_.cover [/.list&]
- (case (/.list& e/0 e/1 (/.list e/2 e/3))
- (pattern (/.list& a/0 a/1 (/.list a/2 a/3)))
+ (_.cover [/.partial_list]
+ (case (/.partial_list e/0 e/1 (/.list e/2 e/3))
+ (pattern (/.partial_list a/0 a/1 (/.list a/2 a/3)))
(and (n.= e/0 a/0)
(n.= e/1 a/1)
(n.= e/2 a/2)
@@ -1131,7 +1131,7 @@
let/3 <code>.local])
(in (list (code.bit (case (the .#scopes *lux*)
- (pattern (list& scope/2 _))
+ (pattern (partial_list scope/2 _))
(let [locals/2 (the .#locals scope/2)
expected_locals/2 (set.of_list text.hash (list fn/2 var/2 let/2
let/3))
diff --git a/stdlib/source/test/lux/control/security/policy.lux b/stdlib/source/test/lux/control/security/policy.lux
index 6d72ff177..cbdc528bd 100644
--- a/stdlib/source/test/lux/control/security/policy.lux
+++ b/stdlib/source/test/lux/control/security/policy.lux
@@ -54,7 +54,7 @@
(implementation
(def: &hash
(implementation
- (def: &equivalence
+ (def: equivalence
(implementation
(def: (= reference sample)
(text#= (%#can_downgrade reference)
diff --git a/stdlib/source/test/lux/data/collection/dictionary.lux b/stdlib/source/test/lux/data/collection/dictionary.lux
index 491e35448..2f9465e94 100644
--- a/stdlib/source/test/lux/data/collection/dictionary.lux
+++ b/stdlib/source/test/lux/data/collection/dictionary.lux
@@ -56,7 +56,7 @@
[constant random.nat
.let [hash (is (Hash Nat)
(implementation
- (def: &equivalence n.equivalence)
+ (def: equivalence n.equivalence)
(def: (hash _)
constant)))]]
(_.cover [/.key_hash]
diff --git a/stdlib/source/test/lux/data/collection/set.lux b/stdlib/source/test/lux/data/collection/set.lux
index 0d6f31475..a5336f6f7 100644
--- a/stdlib/source/test/lux/data/collection/set.lux
+++ b/stdlib/source/test/lux/data/collection/set.lux
@@ -55,7 +55,7 @@
[hash (# ! each (function (_ constant)
(is (Hash Nat)
(implementation
- (def: &equivalence n.equivalence)
+ (def: equivalence n.equivalence)
(def: (hash _)
constant))))
diff --git a/stdlib/source/test/lux/data/collection/set/ordered.lux b/stdlib/source/test/lux/data/collection/set/ordered.lux
index 04a3eed86..b4b97a984 100644
--- a/stdlib/source/test/lux/data/collection/set/ordered.lux
+++ b/stdlib/source/test/lux/data/collection/set/ordered.lux
@@ -23,15 +23,15 @@
(random.Random Nat)
(# random.monad each (n.% 100) random.nat))
-(def: .public (random size &order gen_value)
+(def: .public (random size order gen_value)
(All (_ a) (-> Nat (Order a) (Random a) (Random (Set a))))
(case size
0
- (random#in (/.empty &order))
+ (random#in (/.empty order))
_
(do random.monad
- [partial (random (-- size) &order gen_value)
+ [partial (random (-- size) order gen_value)
value (random.only (|>> (/.member? partial) not)
gen_value)]
(in (/.has value partial)))))
diff --git a/stdlib/source/test/lux/data/collection/stream.lux b/stdlib/source/test/lux/data/collection/stream.lux
index d7fa8a191..64c5d6337 100644
--- a/stdlib/source/test/lux/data/collection/stream.lux
+++ b/stdlib/source/test/lux/data/collection/stream.lux
@@ -111,7 +111,7 @@
(/.iterations (function (_ n) [(++ n) (%.nat n)])
offset)))))
(_.cover [/.cycle]
- (let [cycle (list& cycle_start cycle_next)]
+ (let [cycle (partial_list cycle_start cycle_next)]
(list#= (list.together (list.repeated size cycle))
(/.first (n.* size (list.size cycle))
(/.cycle [cycle_start cycle_next])))))
diff --git a/stdlib/source/test/lux/data/collection/tree.lux b/stdlib/source/test/lux/data/collection/tree.lux
index 8973e4818..b8569005e 100644
--- a/stdlib/source/test/lux/data/collection/tree.lux
+++ b/stdlib/source/test/lux/data/collection/tree.lux
@@ -1,23 +1,23 @@
(.using
- [library
- [lux "*"
- ["_" test {"+" Test}]
- [abstract
- ["[0]" monad {"+" do}]
- [\\specification
- ["$[0]" equivalence]
- ["$[0]" mix]
- ["$[0]" functor]]]
- [data
- ["[0]" product]
- [collection
- ["[0]" list ("[1]#[0]" functor mix)]]]
- [math
- ["[0]" random {"+" Random}]
- [number
- ["n" nat]]]]]
- [\\library
- ["[0]" / {"+" Tree}]])
+ [library
+ [lux "*"
+ ["_" test {"+" Test}]
+ [abstract
+ ["[0]" monad {"+" do}]
+ [\\specification
+ ["$[0]" equivalence]
+ ["$[0]" mix]
+ ["$[0]" functor]]]
+ [data
+ ["[0]" product]
+ [collection
+ ["[0]" list ("[1]#[0]" functor mix)]]]
+ [math
+ ["[0]" random {"+" Random}]
+ [number
+ ["n" nat]]]]]
+ [\\library
+ ["[0]" / {"+" Tree}]])
(def: .public (tree gen_value)
(All (_ a) (-> (Random a) (Random [Nat (Tree a)])))
@@ -62,7 +62,7 @@
children (random.list num_children random.nat)]
(_.cover [/.branch]
(# (list.equivalence n.equivalence) =
- (list& value children)
+ (partial_list value children)
(/.flat (/.branch value (list#each /.leaf children))))))
(do random.monad
[expected/0 random.nat
diff --git a/stdlib/source/test/lux/data/collection/tree/finger.lux b/stdlib/source/test/lux/data/collection/tree/finger.lux
index 85c5ec037..fb4ddc214 100644
--- a/stdlib/source/test/lux/data/collection/tree/finger.lux
+++ b/stdlib/source/test/lux/data/collection/tree/finger.lux
@@ -90,8 +90,8 @@
(# builder branch tree (# builder leaf tag value)))
(# builder leaf tags/H values/H)
(list.zipped_2 tags/T values/T))]
- (and (# tags_equivalence = (list& tags/H tags/T) (/.tags tree))
- (# values_equivalence = (list& values/H values/T) (/.values tree))))))
+ (and (# tags_equivalence = (partial_list tags/H tags/T) (/.tags tree))
+ (# values_equivalence = (partial_list values/H values/T) (/.values tree))))))
(_.cover [/.one]
(let [can_find_correct_one!
(|> (# ..builder leaf tag_left expected_left)
diff --git a/stdlib/source/test/lux/math/number/i64.lux b/stdlib/source/test/lux/math/number/i64.lux
index 561ab0f04..ec6b56f7e 100644
--- a/stdlib/source/test/lux/math/number/i64.lux
+++ b/stdlib/source/test/lux/math/number/i64.lux
@@ -140,7 +140,7 @@
(function (_ narrow)
(# random.functor each narrow random.i64)))]]
($_ _.and
- ($equivalence.spec (# sub &equivalence) (random (# sub narrow)))
+ ($equivalence.spec (# sub sub_equivalence) (random (# sub narrow)))
(_.cover [/.sub]
(let [actual (|> expected .i64 (# sub narrow) (# sub wide))]
(#= expected actual)))
diff --git a/stdlib/source/test/lux/meta.lux b/stdlib/source/test/lux/meta.lux
index 33e22c581..b01cdd67a 100644
--- a/stdlib/source/test/lux/meta.lux
+++ b/stdlib/source/test/lux/meta.lux
@@ -709,17 +709,17 @@
[label_module
[.#module_hash 0
.#module_aliases (list)
- .#definitions (list& [name_0 {.#Type [true type_0 {.#Left tags_0}]}]
- [name_1 {.#Type [true type_1 {.#Right tags_1}]}]
- ($_ list#composite
- (|> {.#Item tags_0}
- list.enumeration
- (list#each (function (_ [index short])
- [short {.#Tag [true type_0 {.#Item tags_0} index]}])))
- (|> {.#Item tags_1}
- list.enumeration
- (list#each (function (_ [index short])
- [short {.#Slot [true type_1 {.#Item tags_1} index]}])))))
+ .#definitions (partial_list [name_0 {.#Type [true type_0 {.#Left tags_0}]}]
+ [name_1 {.#Type [true type_1 {.#Right tags_1}]}]
+ ($_ list#composite
+ (|> {.#Item tags_0}
+ list.enumeration
+ (list#each (function (_ [index short])
+ [short {.#Tag [true type_0 {.#Item tags_0} index]}])))
+ (|> {.#Item tags_1}
+ list.enumeration
+ (list#each (function (_ [index short])
+ [short {.#Slot [true type_1 {.#Item tags_1} index]}])))))
.#imports (list)
.#module_state {.#Active}]])
.#scopes (list)
diff --git a/stdlib/source/test/lux/meta/configuration.lux b/stdlib/source/test/lux/meta/configuration.lux
index fc300a01d..f3b4b2a5f 100644
--- a/stdlib/source/test/lux/meta/configuration.lux
+++ b/stdlib/source/test/lux/meta/configuration.lux
@@ -33,7 +33,7 @@
_ (do [! random.monad]
[feature (random.ascii/upper amount)
value (random.ascii/lower amount)]
- (# ! each (|>> (list& [feature value]))
+ (# ! each (|>> (partial_list [feature value]))
(random (-- amount))))))
(syntax: (failure [it <code>.any])
diff --git a/stdlib/source/test/lux/tool/compiler/language/lux/analysis/module.lux b/stdlib/source/test/lux/tool/compiler/language/lux/analysis/module.lux
index f87e34b08..538f8375a 100644
--- a/stdlib/source/test/lux/tool/compiler/language/lux/analysis/module.lux
+++ b/stdlib/source/test/lux/tool/compiler/language/lux/analysis/module.lux
@@ -231,8 +231,8 @@
[definition]
[{.#Type [public? def_type {.#Left [labels|head labels|tail]}]}]
[{.#Type [public? def_type {.#Right [labels|head labels|tail]}]}]
- [{.#Tag [public? def_type (list& labels|head labels|tail) index]}]
- [{.#Slot [public? def_type (list& labels|head labels|tail) index]}]))
+ [{.#Tag [public? def_type (partial_list labels|head labels|tail) index]}]
+ [{.#Slot [public? def_type (partial_list labels|head labels|tail) index]}]))
(|> (/.with hash module_name
(do /phase.monad
[_ (/.define def_name definition)]
@@ -255,8 +255,8 @@
[{.#Definition [public? def_type []]}]
[{.#Type [public? def_type {.#Left [labels|head labels|tail]}]}]
[{.#Type [public? def_type {.#Right [labels|head labels|tail]}]}]
- [{.#Tag [public? def_type (list& labels|head labels|tail) index]}]
- [{.#Slot [public? def_type (list& labels|head labels|tail) index]}]))
+ [{.#Tag [public? def_type (partial_list labels|head labels|tail) index]}]
+ [{.#Slot [public? def_type (partial_list labels|head labels|tail) index]}]))
(|> (/.with hash module_name
(do /phase.monad
[_ (/.define def_name definition)
@@ -294,9 +294,9 @@
(do [! /phase.monad]
[.let [it {.#Named [module_name def_name] def_type}]
_ (/.define def_name {.#Type [public? it {<side> [labels|head labels|tail]}]})
- _ (/.declare_labels <record?> (list& labels|head labels|tail) public? it)]
+ _ (/.declare_labels <record?> (partial_list labels|head labels|tail) public? it)]
(monad.each ! (|>> [module_name] <query> /extension.lifted)
- (list& labels|head labels|tail))))
+ (partial_list labels|head labels|tail))))
(/phase.result state)
(pipe.case
{try.#Success _} <on_success>
@@ -312,7 +312,7 @@
(do [! /phase.monad]
[.let [it def_type]
_ (/.define def_name {.#Type [public? it {<side> [labels|head labels|tail]}]})]
- (/.declare_labels <record?> (list& labels|head labels|tail) public? it)))
+ (/.declare_labels <record?> (partial_list labels|head labels|tail) public? it)))
(/phase.result state)
(pipe.case
{try.#Success _}
@@ -329,7 +329,7 @@
(do [! /phase.monad]
[.let [it {.#Named [foreign_module def_name] def_type}]
_ (/.define def_name {.#Type [public? it {<side> [labels|head labels|tail]}]})]
- (/.declare_labels <record?> (list& labels|head labels|tail) public? it)))
+ (/.declare_labels <record?> (partial_list labels|head labels|tail) public? it)))
(/phase.result state)
(pipe.case
{try.#Success _}
diff --git a/stdlib/source/test/lux/tool/compiler/meta/cli.lux b/stdlib/source/test/lux/tool/compiler/meta/cli.lux
index ab9504ee5..97ee8ac28 100644
--- a/stdlib/source/test/lux/tool/compiler/meta/cli.lux
+++ b/stdlib/source/test/lux/tool/compiler/meta/cli.lux
@@ -59,7 +59,7 @@
(`` ($_ _.and
(~~ (template [<type> <slot> <?>]
[(_.cover [<type>]
- (|> (list& "build" compilation')
+ (|> (partial_list "build" compilation')
(<cli>.result /.service)
(try#each (|>> (pipe.case
{/.#Compilation it}
@@ -82,7 +82,7 @@
)))
(_.cover [/.Interpretation]
(`` (and (~~ (template [<slot> <?>]
- [(|> (list& "repl" compilation')
+ [(|> (partial_list "repl" compilation')
(<cli>.result /.service)
(try#each (|>> (pipe.case
{/.#Interpretation it}
@@ -104,7 +104,7 @@
)))))
(_.cover [/.Export]
(`` (and (~~ (template [<side> <?>]
- [(|> (list& "export" export)
+ [(|> (partial_list "export" export)
(<cli>.result /.service)
(try#each (|>> (pipe.case
{/.#Export it}
diff --git a/stdlib/source/test/lux/type/check.lux b/stdlib/source/test/lux/type/check.lux
index 37c006732..fab083c9e 100644
--- a/stdlib/source/test/lux/type/check.lux
+++ b/stdlib/source/test/lux/type/check.lux
@@ -489,8 +489,8 @@
(succeeds? (do [! /.monad]
[[var/head var/tail+ var/last] (..build_ring tail_size)
_ (/.check var/head nominal/0)
- failures (monad.each ! (|>> (/.check nominal/1) ..verdict) (list& var/head var/tail+))
- successes (monad.each ! (|>> (/.check nominal/0) ..verdict) (list& var/head var/tail+))]
+ failures (monad.each ! (|>> (/.check nominal/1) ..verdict) (partial_list var/head var/tail+))
+ successes (monad.each ! (|>> (/.check nominal/0) ..verdict) (partial_list var/head var/tail+))]
(/.assertion "" (and (list.every? (bit#= false) failures)
(list.every? (bit#= true) successes)))))
@@ -500,8 +500,8 @@
[var/head/1 var/tail+/1 var/last/1] (..build_ring tail_size)
_ (/.check var/head/0 var/head/1)
_ (/.check var/head/0 nominal/0)
- .let [all_variables (list#composite (list& var/head/0 var/tail+/0)
- (list& var/head/1 var/tail+/1))]
+ .let [all_variables (list#composite (partial_list var/head/0 var/tail+/0)
+ (partial_list var/head/1 var/tail+/1))]
failures (monad.each ! (|>> (/.check nominal/1) ..verdict) all_variables)
successes (monad.each ! (|>> (/.check nominal/0) ..verdict) all_variables)]
(/.assertion "" (and (list.every? (bit#= false) failures)
diff --git a/stdlib/source/test/lux/world/file.lux b/stdlib/source/test/lux/world/file.lux
index ae9d7ff01..5d1654269 100644
--- a/stdlib/source/test/lux/world/file.lux
+++ b/stdlib/source/test/lux/world/file.lux
@@ -78,7 +78,7 @@
[_ (atom.compare_and_swap! disk' (dictionary.has @ {.#Left [now it]} disk') disk)]
(case (/.parent fs @)
{.#Some parent}
- (alert_parent! disk (|>> (list& @)) parent)
+ (alert_parent! disk (|>> (partial_list @)) parent)
{.#None}
(in {try.#Success []})))
@@ -174,7 +174,7 @@
[_ (atom.compare_and_swap! disk' (dictionary.has @ {.#Right (list)} disk') disk)]
(case (/.parent mock @)
{.#Some parent}
- (alert_parent! disk (|>> (list& @)) parent)
+ (alert_parent! disk (|>> (partial_list @)) parent)
{.#None}
(in {try.#Success []})))