aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/documentation
diff options
context:
space:
mode:
authorEduardo Julian2022-07-02 05:38:27 -0400
committerEduardo Julian2022-07-02 05:38:27 -0400
commitb96beb587c11fcfbce86ce2d62351600cf6cad1b (patch)
treec9a558ab1391ac97cb11e8777ea78299f1ab5555 /stdlib/source/documentation
parent104130efba46a875eba566384578f8aa8593ad37 (diff)
More traditional names for unquoting macros.
Diffstat (limited to 'stdlib/source/documentation')
-rw-r--r--stdlib/source/documentation/lux.lux30
-rw-r--r--stdlib/source/documentation/lux/abstract.lux4
-rw-r--r--stdlib/source/documentation/lux/control.lux5
-rw-r--r--stdlib/source/documentation/lux/control/concatenative.lux8
-rw-r--r--stdlib/source/documentation/lux/control/function.lux6
-rw-r--r--stdlib/source/documentation/lux/control/function/predicate.lux (renamed from stdlib/source/documentation/lux/abstract/predicate.lux)0
-rw-r--r--stdlib/source/documentation/lux/control/parser/analysis.lux4
-rw-r--r--stdlib/source/documentation/lux/control/parser/code.lux6
-rw-r--r--stdlib/source/documentation/lux/control/parser/json.lux6
-rw-r--r--stdlib/source/documentation/lux/control/parser/synthesis.lux4
-rw-r--r--stdlib/source/documentation/lux/control/parser/text.lux6
-rw-r--r--stdlib/source/documentation/lux/control/parser/type.lux2
-rw-r--r--stdlib/source/documentation/lux/control/security/capability.lux51
-rw-r--r--stdlib/source/documentation/lux/control/security/policy.lux122
-rw-r--r--stdlib/source/documentation/lux/data/collection/array.lux5
-rw-r--r--stdlib/source/documentation/lux/data/collection/bits.lux10
-rw-r--r--stdlib/source/documentation/lux/data/collection/dictionary.lux9
-rw-r--r--stdlib/source/documentation/lux/data/collection/dictionary/ordered.lux7
-rw-r--r--stdlib/source/documentation/lux/data/collection/list.lux9
-rw-r--r--stdlib/source/documentation/lux/data/collection/list/property.lux9
-rw-r--r--stdlib/source/documentation/lux/data/collection/queue.lux8
-rw-r--r--stdlib/source/documentation/lux/data/collection/queue/priority.lux8
-rw-r--r--stdlib/source/documentation/lux/data/collection/sequence.lux8
-rw-r--r--stdlib/source/documentation/lux/data/collection/stream.lux7
-rw-r--r--stdlib/source/documentation/lux/data/color.lux7
-rw-r--r--stdlib/source/documentation/lux/data/color/named.lux5
-rw-r--r--stdlib/source/documentation/lux/data/format/json.lux2
-rw-r--r--stdlib/source/documentation/lux/data/text/encoding.lux2
-rw-r--r--stdlib/source/documentation/lux/data/text/unicode/block.lux2
-rw-r--r--stdlib/source/documentation/lux/extension.lux3
-rw-r--r--stdlib/source/documentation/lux/ffi.jvm.lux10
-rw-r--r--stdlib/source/documentation/lux/ffi.old.lux2
-rw-r--r--stdlib/source/documentation/lux/macro.lux14
-rw-r--r--stdlib/source/documentation/lux/macro/syntax.lux2
-rw-r--r--stdlib/source/documentation/lux/math/number.lux2
-rw-r--r--stdlib/source/documentation/lux/math/number/frac.lux6
-rw-r--r--stdlib/source/documentation/lux/math/number/i64.lux4
-rw-r--r--stdlib/source/documentation/lux/math/number/int.lux4
-rw-r--r--stdlib/source/documentation/lux/math/number/nat.lux4
-rw-r--r--stdlib/source/documentation/lux/math/number/rev.lux4
-rw-r--r--stdlib/source/documentation/lux/meta.lux10
-rw-r--r--stdlib/source/documentation/lux/meta/type.lux (renamed from stdlib/source/documentation/lux/type.lux)8
-rw-r--r--stdlib/source/documentation/lux/meta/type/check.lux (renamed from stdlib/source/documentation/lux/type/check.lux)0
-rw-r--r--stdlib/source/documentation/lux/meta/type/dynamic.lux (renamed from stdlib/source/documentation/lux/type/dynamic.lux)0
-rw-r--r--stdlib/source/documentation/lux/meta/type/implicit.lux (renamed from stdlib/source/documentation/lux/type/implicit.lux)0
-rw-r--r--stdlib/source/documentation/lux/meta/type/poly.lux (renamed from stdlib/source/documentation/lux/type/poly.lux)0
-rw-r--r--stdlib/source/documentation/lux/meta/type/primitive.lux (renamed from stdlib/source/documentation/lux/type/primitive.lux)2
-rw-r--r--stdlib/source/documentation/lux/meta/type/quotient.lux (renamed from stdlib/source/documentation/lux/type/quotient.lux)0
-rw-r--r--stdlib/source/documentation/lux/meta/type/refinement.lux (renamed from stdlib/source/documentation/lux/type/refinement.lux)0
-rw-r--r--stdlib/source/documentation/lux/meta/type/resource.lux (renamed from stdlib/source/documentation/lux/type/resource.lux)4
-rw-r--r--stdlib/source/documentation/lux/meta/type/unit.lux89
-rw-r--r--stdlib/source/documentation/lux/meta/type/variance.lux (renamed from stdlib/source/documentation/lux/type/variance.lux)0
-rw-r--r--stdlib/source/documentation/lux/static.lux4
-rw-r--r--stdlib/source/documentation/lux/time.lux2
-rw-r--r--stdlib/source/documentation/lux/type/unit.lux89
-rw-r--r--stdlib/source/documentation/lux/world/console.lux4
-rw-r--r--stdlib/source/documentation/lux/world/file.lux4
-rw-r--r--stdlib/source/documentation/lux/world/file/watch.lux8
-rw-r--r--stdlib/source/documentation/lux/world/net/http/client.lux6
-rw-r--r--stdlib/source/documentation/lux/world/net/http/status.lux2
-rw-r--r--stdlib/source/documentation/lux/world/output/video/resolution.lux2
-rw-r--r--stdlib/source/documentation/lux/world/shell.lux4
62 files changed, 296 insertions, 349 deletions
diff --git a/stdlib/source/documentation/lux.lux b/stdlib/source/documentation/lux.lux
index 0b0e815a7..7be9e1622 100644
--- a/stdlib/source/documentation/lux.lux
+++ b/stdlib/source/documentation/lux.lux
@@ -34,7 +34,6 @@
["[1][0]" test]
["[1][0]" time]
["[1][0]" tool] ... TODO: Documentation for this
- ["[1][0]" type]
["[1][0]" world]])
(.`` (.def .public documentation
@@ -235,18 +234,18 @@
($.documentation /.`
(format "Hygienic quasi-quotation as a macro."
- \n "Unquote (~) and unquote-splice (~+) must also be used as forms."
+ \n "Unquote (,) and unquote-splice (,*) must also be used as forms."
\n "All unprefixed macros will receive their parent module's prefix if imported; otherwise will receive the prefix of the module on which the quasi-quote is being used.")
- [(` (def (~ name)
- (function ((~' _) (~+ args))
- (~ body))))])
+ [(` (def (, name)
+ (function ((,' _) (,* args))
+ (, body))))])
($.documentation /.`'
(format "Unhygienic quasi-quotation as a macro."
- \n "Unquote (~) and unquote-splice (~+) must also be used as forms.")
- [(`' (def (~ name)
- (function (_ (~+ args))
- (~ body))))])
+ \n "Unquote (,) and unquote-splice (,*) must also be used as forms.")
+ [(`' (def (, name)
+ (function (_ (,* args))
+ (, body))))])
($.documentation /.'
"Quotation as a macro."
@@ -430,7 +429,7 @@
(case tokens
(^with_template [<tag>]
[(pattern (list [_ {<tag> [module name]}]))
- (in (list (` [(~ (text$ module)) (~ (text$ name))])))])
+ (in (list (` [(, (text$ module)) (, (text$ name))])))])
([#Symbol])
_
@@ -502,7 +501,7 @@
(is (-> a a Bit)
<)))])
- (.~~ (.with_template [<name>]
+ (.,, (.with_template [<name>]
[($.documentation <name>
"Safe type-casting for I64 values.")]
@@ -655,7 +654,7 @@
... type
... ))])
- (.~~ (.with_template [<name> <doc>]
+ (.,, (.with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
@@ -846,15 +845,15 @@
($.documentation /.``
(format "Delimits a controlled (spliced) macro-expansion."
- \n "Uses a (~~) special form to specify where to expand.")
+ \n "Uses a (,,) special form to specify where to expand.")
[(`` (some expression
- (~~ (some macro which may yield 0 or more results))))])
+ (,, (some macro which may yield 0 or more results))))])
... ($.documentation /.^code
... "Generates pattern-matching code for Code values in a way that looks like code-templating."
... [(is (Maybe Nat)
... (case (` (#0 123 +456.789))
- ... (^code (#0 (~ [_ {.#Nat number}]) +456.789))
+ ... (^code (#0 (, [_ {.#Nat number}]) +456.789))
... {.#Some number}
... _
@@ -908,7 +907,6 @@
/test.documentation
/time.documentation
/tool.documentation
- /type.documentation
/world.documentation])))
(program: inputs
diff --git a/stdlib/source/documentation/lux/abstract.lux b/stdlib/source/documentation/lux/abstract.lux
index 52febba83..9e4d591ec 100644
--- a/stdlib/source/documentation/lux/abstract.lux
+++ b/stdlib/source/documentation/lux/abstract.lux
@@ -17,8 +17,7 @@
["[1][0]" interval]
["[1][0]" monad]
["[1][0]" monoid]
- ["[1][0]" order]
- ["[1][0]" predicate]])
+ ["[1][0]" order]])
(.def .public documentation
(.List $.Module)
@@ -35,5 +34,4 @@
/monad.documentation
/monoid.documentation
/order.documentation
- /predicate.documentation
)))
diff --git a/stdlib/source/documentation/lux/control.lux b/stdlib/source/documentation/lux/control.lux
index e4bfc0433..94b5981ee 100644
--- a/stdlib/source/documentation/lux/control.lux
+++ b/stdlib/source/documentation/lux/control.lux
@@ -1,7 +1,7 @@
(.require
[library
[lux (.except)
- ["$" documentation (.only documentation:)]
+ ["$" documentation]
[data
[text (.only \n)
["%" \\format (.only format)]]
@@ -25,8 +25,7 @@
["[1][0]" state]
["[1][0]" thread]
["[1][0]" try]
- ["[1][0]" writer]
- ])
+ ["[1][0]" writer]])
(.def .public documentation
(.List $.Module)
diff --git a/stdlib/source/documentation/lux/control/concatenative.lux b/stdlib/source/documentation/lux/control/concatenative.lux
index 2f553ce34..d300fd7fd 100644
--- a/stdlib/source/documentation/lux/control/concatenative.lux
+++ b/stdlib/source/documentation/lux/control/concatenative.lux
@@ -41,7 +41,7 @@
[(is (=> [Nat] [Nat])
((apply 1) ++))])
- (~~ (with_template [<arity>]
+ (,, (with_template [<arity>]
[(with_expansions [<name> (template.symbol [/._] ["apply_" <arity>])
<doc> (template.text ["Lift a function of arity " <arity>
" into a concatenative function of arity " <arity> "."])]
@@ -82,9 +82,9 @@
($.documentation /.right
"Right-injects the top into sum.")
- (~~ (with_template [<input> <word> <func>]
- [(`` ($.documentation (~~ (template.symbol [/._] [<word>]))
- (~~ (template.text [<func> " for " <input> " arithmetic."]))))]
+ (,, (with_template [<input> <word> <func>]
+ [(`` ($.documentation (,, (template.symbol [/._] [<word>]))
+ (,, (template.text [<func> " for " <input> " arithmetic."]))))]
[Nat n/+ n.+]
[Nat n/- n.-]
diff --git a/stdlib/source/documentation/lux/control/function.lux b/stdlib/source/documentation/lux/control/function.lux
index 4d73ff69b..ed276e3f4 100644
--- a/stdlib/source/documentation/lux/control/function.lux
+++ b/stdlib/source/documentation/lux/control/function.lux
@@ -13,7 +13,8 @@
["[1][0]" contract]
["[1][0]" memo]
["[1][0]" mixin]
- ["[1][0]" mutual]])
+ ["[1][0]" mutual]
+ ["[1][0]" predicate]])
(.def .public documentation
(.List $.Module)
@@ -48,4 +49,5 @@
[/contract.documentation
/memo.documentation
/mixin.documentation
- /mutual.documentation]))
+ /mutual.documentation
+ /predicate.documentation]))
diff --git a/stdlib/source/documentation/lux/abstract/predicate.lux b/stdlib/source/documentation/lux/control/function/predicate.lux
index e8507ce02..e8507ce02 100644
--- a/stdlib/source/documentation/lux/abstract/predicate.lux
+++ b/stdlib/source/documentation/lux/control/function/predicate.lux
diff --git a/stdlib/source/documentation/lux/control/parser/analysis.lux b/stdlib/source/documentation/lux/control/parser/analysis.lux
index d0f1d3012..14ff24f04 100644
--- a/stdlib/source/documentation/lux/control/parser/analysis.lux
+++ b/stdlib/source/documentation/lux/control/parser/analysis.lux
@@ -28,9 +28,9 @@
(with_template [<query> <assertion>]
[(`` (these (`` (documentation: <query>
- (format "Queries for a " (~~ (template.text [<query>])) " value.")))
+ (format "Queries for a " (,, (template.text [<query>])) " value.")))
(`` (documentation: <assertion>
- (format "Assert a specific " (~~ (template.text [<query>])) " value.")))))]
+ (format "Assert a specific " (,, (template.text [<query>])) " value.")))))]
[/.bit /.this_bit]
[/.nat /.this_nat]
diff --git a/stdlib/source/documentation/lux/control/parser/code.lux b/stdlib/source/documentation/lux/control/parser/code.lux
index e4b75bce8..0840fd16d 100644
--- a/stdlib/source/documentation/lux/control/parser/code.lux
+++ b/stdlib/source/documentation/lux/control/parser/code.lux
@@ -18,9 +18,9 @@
(with_template [<query> <check>]
[(`` (documentation: <query>
- (format "Parses the next " (~~ (template.text [<query>])) " input.")))
+ (format "Parses the next " (,, (template.text [<query>])) " input.")))
(`` (documentation: <check>
- (format "Checks for a specific " (~~ (template.text [<query>])) " input.")))]
+ (format "Checks for a specific " (,, (template.text [<query>])) " input.")))]
[/.bit /.this_bit]
[/.nat /.this_nat]
@@ -46,7 +46,7 @@
(with_template [<name>]
[(`` (documentation: <name>
- (format "Parses the contents of a " (~~ (template.text [<name>])) ".")))]
+ (format "Parses the contents of a " (,, (template.text [<name>])) ".")))]
[/.form]
[/.variant]
diff --git a/stdlib/source/documentation/lux/control/parser/json.lux b/stdlib/source/documentation/lux/control/parser/json.lux
index af4d3ed00..ed4068800 100644
--- a/stdlib/source/documentation/lux/control/parser/json.lux
+++ b/stdlib/source/documentation/lux/control/parser/json.lux
@@ -23,7 +23,7 @@
(with_template [<name>]
[(`` (documentation: <name>
- (format "Reads a JSON value as " (~~ (template.text [<name>])) ".")))]
+ (format "Reads a JSON value as " (,, (template.text [<name>])) ".")))]
[/.null]
[/.boolean]
@@ -33,9 +33,9 @@
(with_template [<test> <check> <read>]
[(`` (documentation: <test>
- (format "Asks whether a JSON value is a " (~~ (template.text [<read>])) ".")))
+ (format "Asks whether a JSON value is a " (,, (template.text [<read>])) ".")))
(`` (documentation: <check>
- (format "Ensures a JSON value is a " (~~ (template.text [<read>])) ".")))]
+ (format "Ensures a JSON value is a " (,, (template.text [<read>])) ".")))]
[/.boolean? /.this_boolean ..boolean]
[/.number? /.this_number ..number]
diff --git a/stdlib/source/documentation/lux/control/parser/synthesis.lux b/stdlib/source/documentation/lux/control/parser/synthesis.lux
index f0187c4f7..b55bb6061 100644
--- a/stdlib/source/documentation/lux/control/parser/synthesis.lux
+++ b/stdlib/source/documentation/lux/control/parser/synthesis.lux
@@ -29,9 +29,9 @@
(with_template [<query> <assertion>]
[(`` (documentation: <query>
- (format "Queries for a " (~~ (template.text [<query>])) " synthesis node.")))
+ (format "Queries for a " (,, (template.text [<query>])) " synthesis node.")))
(`` (documentation: <assertion>
- (format "Checks for a specific " (~~ (template.text [<query>])) " synthesis node.")))]
+ (format "Checks for a specific " (,, (template.text [<query>])) " synthesis node.")))]
[/.bit /.this_bit]
[/.i64 /.this_i64]
diff --git a/stdlib/source/documentation/lux/control/parser/text.lux b/stdlib/source/documentation/lux/control/parser/text.lux
index 7e13643b1..4b35bc626 100644
--- a/stdlib/source/documentation/lux/control/parser/text.lux
+++ b/stdlib/source/documentation/lux/control/parser/text.lux
@@ -35,7 +35,7 @@
(with_template [<name> <caveat>]
[(`` (documentation: <name>
- (format "Produce a character" (~~ (template.text [<caveat>])) " if the parser fails.")))]
+ (format "Produce a character" (,, (template.text [<caveat>])) " if the parser fails.")))]
[/.not ""]
[/.not! " (as a slice)"]
@@ -110,9 +110,9 @@
(with_template [<text> <slice>]
[(`` (documentation: <text>
- (format "Yields " (~~ (template.text [<name>])) " characters as a single continuous text.")))
+ (format "Yields " (,, (template.text [<name>])) " characters as a single continuous text.")))
(`` (documentation: <slice>
- (format "Yields " (~~ (template.text [<name>])) " characters as a single continuous text (as a slice).")))]
+ (format "Yields " (,, (template.text [<name>])) " characters as a single continuous text (as a slice).")))]
[/.some /.some!]
[/.many /.many!]
diff --git a/stdlib/source/documentation/lux/control/parser/type.lux b/stdlib/source/documentation/lux/control/parser/type.lux
index 52e9a0fbb..171db7456 100644
--- a/stdlib/source/documentation/lux/control/parser/type.lux
+++ b/stdlib/source/documentation/lux/control/parser/type.lux
@@ -43,7 +43,7 @@
(with_template [<name>]
[(`` (documentation: <name>
- (format "Parses the contents of a " (~~ (template.text [<name>])) " type.")))]
+ (format "Parses the contents of a " (,, (template.text [<name>])) " type.")))]
[/.variant]
[/.tuple]
diff --git a/stdlib/source/documentation/lux/control/security/capability.lux b/stdlib/source/documentation/lux/control/security/capability.lux
index ba9e3a80a..920f9c439 100644
--- a/stdlib/source/documentation/lux/control/security/capability.lux
+++ b/stdlib/source/documentation/lux/control/security/capability.lux
@@ -1,7 +1,7 @@
(.require
[library
[lux (.except)
- ["$" documentation (.only documentation:)]
+ ["$" documentation]
[data
[text (.only \n)
["%" \\format (.only format)]]]
@@ -10,35 +10,30 @@
[\\library
["[0]" /]])
-(documentation: (/.Capability brand input output)
- (format "Represents the capability to perform an operation."
- \n "This operation is assumed to have security implications."))
-
-(documentation: /.use
- "Applies a capability against its required input."
- [(use capability input)])
-
-(documentation: /.capability:
- "Defines a capability as a unique type, and a constructor for instances."
- [(capability: (Can_Duplicate a)
- (can_duplicate a [a a]))
-
- (let [capability (can_duplicate
- (function (_ value)
- [value value]))
- [left right] (..use capability 123)]
- (same? left right))])
-
-(documentation: /.async
- "Converts a synchronous I/O-based capability into an asynchronous capability."
- [(async capability)])
-
(.def .public documentation
(.List $.Module)
($.module /._
""
- [..Capability
- ..use
- ..capability:
- ..async]
+ [($.documentation (/.Capability brand input output)
+ (format "Represents the capability to perform an operation."
+ \n "This operation is assumed to have security implications."))
+
+ ($.documentation /.use
+ "Applies a capability against its required input."
+ [(use capability input)])
+
+ ($.documentation /.capability:
+ "Defines a capability as a unique type, and a constructor for instances."
+ [(capability: (Can_Duplicate a)
+ (can_duplicate a [a a]))
+
+ (let [capability (can_duplicate
+ (function (_ value)
+ [value value]))
+ [left right] (..use capability 123)]
+ (same? left right))])
+
+ ($.documentation /.async
+ "Converts a synchronous I/O-based capability into an asynchronous capability."
+ [(async capability)])]
[]))
diff --git a/stdlib/source/documentation/lux/control/security/policy.lux b/stdlib/source/documentation/lux/control/security/policy.lux
index a2da0b92f..d693c8c50 100644
--- a/stdlib/source/documentation/lux/control/security/policy.lux
+++ b/stdlib/source/documentation/lux/control/security/policy.lux
@@ -1,7 +1,7 @@
(.require
[library
[lux (.except)
- ["$" documentation (.only documentation:)]
+ ["$" documentation]
[data
[text (.only \n)
["%" \\format (.only format)]]]
@@ -10,81 +10,71 @@
[\\library
["[0]" /]])
-(documentation: (/.Policy brand value %)
- "A security policy encoded as the means to 'upgrade' or 'downgrade' in a secure context.")
+(.def .public documentation
+ (.List $.Module)
+ ($.module /._
+ ""
+ [($.default /.functor)
+ ($.default /.apply)
+ ($.default /.monad)
+ ($.default /.Private)
+ ($.default /.Can_Conceal)
+ ($.default /.Can_Reveal)
+ ($.default /.Safe)
+ ($.default /.Can_Trust)
+ ($.default /.Can_Distrust)
-(documentation: (/.Can_Upgrade brand % value)
- "Represents the capacity to 'upgrade' a value.")
+ ($.documentation (/.Policy brand value %)
+ "A security policy encoded as the means to 'upgrade' or 'downgrade' in a secure context.")
-(documentation: (/.Can_Downgrade brand % value)
- "Represents the capacity to 'downgrade' a value.")
+ ($.documentation (/.Can_Upgrade brand % value)
+ "Represents the capacity to 'upgrade' a value.")
-(documentation: (/.Privilege brand %)
- "Represents the privilege to both 'upgrade' and 'downgrade' a value.")
+ ($.documentation (/.Can_Downgrade brand % value)
+ "Represents the capacity to 'downgrade' a value.")
-(documentation: (/.Delegation brand %from %to)
- "Represents the act of delegating policy capacities.")
+ ($.documentation (/.Privilege brand %)
+ "Represents the privilege to both 'upgrade' and 'downgrade' a value.")
-(documentation: /.delegation
- "Delegating policy capacities."
- [(delegation downgrade upgrade)])
+ ($.documentation (/.Delegation brand %from %to)
+ "Represents the act of delegating policy capacities.")
-(documentation: (/.Context brand scope %)
- "A computational context with an associated policy privilege.")
+ ($.documentation /.delegation
+ "Delegating policy capacities."
+ [(delegation downgrade upgrade)])
-(documentation: /.with_policy
- "Activates a security context with the priviledge to enforce it's policy."
- [(type Password
- (Private Text))
+ ($.documentation (/.Context brand scope %)
+ "A computational context with an associated policy privilege.")
- (type (Policy %)
- (Interface
- (is (-> Text (Password %))
- password)
- (is (-> (Password %) Text)
- unsafe)))
+ ($.documentation /.with_policy
+ "Activates a security context with the priviledge to enforce it's policy."
+ [(type Password
+ (Private Text))
- (def (policy _)
- (Ex (_ %) (-> Any (Policy %)))
- (with_policy
- (is (Context Privacy Policy)
- (function (_ (open "%::."))
- (implementation
- (def (password value)
- (%::can_upgrade value))
- (def (unsafe password)
- (%::can_downgrade password)))))))]
- [(with_policy context)])
+ (type (Policy %)
+ (Interface
+ (is (-> Text (Password %))
+ password)
+ (is (-> (Password %) Text)
+ unsafe)))
-(documentation: /.Privacy
- (format "A security context for privacy."
- \n "Private data is data which cannot be allowed to leak outside of the programmed."))
+ (def (policy _)
+ (Ex (_ %) (-> Any (Policy %)))
+ (with_policy
+ (is (Context Privacy Policy)
+ (function (_ (open "%::."))
+ (implementation
+ (def (password value)
+ (%::can_upgrade value))
+ (def (unsafe password)
+ (%::can_downgrade password)))))))]
+ [(with_policy context)])
-(documentation: /.Safety
- (format "A security context for safety."
- \n "Safe data is data coming from outside the program which can be trusted to be properly formatted and lacking injections."))
+ ($.documentation /.Privacy
+ (format "A security context for privacy."
+ \n "Private data is data which cannot be allowed to leak outside of the programmed."))
-(.def .public documentation
- (.List $.Module)
- ($.module /._
- ""
- [..Policy
- ..Can_Upgrade
- ..Can_Downgrade
- ..Privilege
- ..Delegation
- ..delegation
- ..Context
- ..with_policy
- ..Privacy
- ..Safety
- ($.default /.functor)
- ($.default /.apply)
- ($.default /.monad)
- ($.default /.Private)
- ($.default /.Can_Conceal)
- ($.default /.Can_Reveal)
- ($.default /.Safe)
- ($.default /.Can_Trust)
- ($.default /.Can_Distrust)]
+ ($.documentation /.Safety
+ (format "A security context for safety."
+ \n "Safe data is data coming from outside the program which can be trusted to be properly formatted and lacking injections."))]
[]))
diff --git a/stdlib/source/documentation/lux/data/collection/array.lux b/stdlib/source/documentation/lux/data/collection/array.lux
index b6bc74a63..29416d649 100644
--- a/stdlib/source/documentation/lux/data/collection/array.lux
+++ b/stdlib/source/documentation/lux/data/collection/array.lux
@@ -6,8 +6,9 @@
["[0]" text (.only \n)
["%" \\format (.only format)]]]
[macro
- ["[0]" code]
- ["[0]" template]]]]
+ ["[0]" template]]
+ [meta
+ ["[0]" code]]]]
[\\library
["[0]" /]])
diff --git a/stdlib/source/documentation/lux/data/collection/bits.lux b/stdlib/source/documentation/lux/data/collection/bits.lux
index 55d0354b0..522f7eccd 100644
--- a/stdlib/source/documentation/lux/data/collection/bits.lux
+++ b/stdlib/source/documentation/lux/data/collection/bits.lux
@@ -1,13 +1,7 @@
(.require
[library
- [lux (.except or and not)
- ["$" documentation]
- [data
- ["[0]" text (.only \n)
- ["%" \\format (.only format)]]]
- [macro
- ["[0]" code]
- ["[0]" template]]]]
+ [lux (.except)
+ ["$" documentation]]]
[\\library
["[0]" /]])
diff --git a/stdlib/source/documentation/lux/data/collection/dictionary.lux b/stdlib/source/documentation/lux/data/collection/dictionary.lux
index 342d79f15..99f6342b4 100644
--- a/stdlib/source/documentation/lux/data/collection/dictionary.lux
+++ b/stdlib/source/documentation/lux/data/collection/dictionary.lux
@@ -1,13 +1,10 @@
(.require
[library
- [lux (.except has revised)
+ [lux (.except)
["$" documentation]
[data
- ["[0]" text (.only \n)
- ["%" \\format (.only format)]]]
- [macro
- ["[0]" code]
- ["[0]" template]]]]
+ [text (.only \n)
+ ["%" \\format (.only format)]]]]]
[\\library
["[0]" /]]
["[0]" /
diff --git a/stdlib/source/documentation/lux/data/collection/dictionary/ordered.lux b/stdlib/source/documentation/lux/data/collection/dictionary/ordered.lux
index a946434d6..74381c580 100644
--- a/stdlib/source/documentation/lux/data/collection/dictionary/ordered.lux
+++ b/stdlib/source/documentation/lux/data/collection/dictionary/ordered.lux
@@ -3,10 +3,9 @@
[lux (.except has revised)
["$" documentation]
[data
- ["[0]" text (.only \n)
+ [text
["%" \\format (.only format)]]]
[macro
- ["[0]" code]
["[0]" template]]]]
[\\library
["[0]" /]])
@@ -36,9 +35,9 @@
""
[(key? dict key)])
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[(`` ($.documentation <name>
- (format "Yields value under the " (~~ (template.text [<name>])) "imum key.")))]
+ (format "Yields value under the " (,, (template.text [<name>])) "imum key.")))]
[/.min]
[/.max]
diff --git a/stdlib/source/documentation/lux/data/collection/list.lux b/stdlib/source/documentation/lux/data/collection/list.lux
index d3fb2c080..60c60b480 100644
--- a/stdlib/source/documentation/lux/data/collection/list.lux
+++ b/stdlib/source/documentation/lux/data/collection/list.lux
@@ -3,11 +3,8 @@
[lux (.except all)
["$" documentation]
[data
- ["[0]" text (.only \n)
- ["%" \\format (.only format)]]]
- [macro
- ["[0]" code]
- ["[0]" template]]]]
+ [text (.only \n)
+ ["%" \\format (.only format)]]]]]
[\\library
["[0]" /]]
["[0]" /
@@ -111,7 +108,7 @@
""
[(member? eq xs x)])
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
diff --git a/stdlib/source/documentation/lux/data/collection/list/property.lux b/stdlib/source/documentation/lux/data/collection/list/property.lux
index 99e2faf06..b94d44263 100644
--- a/stdlib/source/documentation/lux/data/collection/list/property.lux
+++ b/stdlib/source/documentation/lux/data/collection/list/property.lux
@@ -1,13 +1,10 @@
(.require
[library
- [lux (.except has revised)
+ [lux (.except)
["$" documentation]
[data
- ["[0]" text (.only \n)
- ["%" \\format (.only format)]]]
- [macro
- ["[0]" code]
- ["[0]" template]]]]
+ [text (.only \n)
+ ["%" \\format (.only format)]]]]]
[\\library
["[0]" /]])
diff --git a/stdlib/source/documentation/lux/data/collection/queue.lux b/stdlib/source/documentation/lux/data/collection/queue.lux
index 963776aa5..935b0dfc3 100644
--- a/stdlib/source/documentation/lux/data/collection/queue.lux
+++ b/stdlib/source/documentation/lux/data/collection/queue.lux
@@ -1,13 +1,7 @@
(.require
[library
[lux (.except list)
- ["$" documentation]
- [data
- ["[0]" text (.only \n)
- ["%" \\format (.only format)]]]
- [macro
- ["[0]" code]
- ["[0]" template]]]]
+ ["$" documentation]]]
[\\library
["[0]" /]]
["[0]" /
diff --git a/stdlib/source/documentation/lux/data/collection/queue/priority.lux b/stdlib/source/documentation/lux/data/collection/queue/priority.lux
index 4952a6954..4c6303902 100644
--- a/stdlib/source/documentation/lux/data/collection/queue/priority.lux
+++ b/stdlib/source/documentation/lux/data/collection/queue/priority.lux
@@ -1,13 +1,7 @@
(.require
[library
[lux (.except list)
- ["$" documentation]
- [data
- ["[0]" text (.only \n)
- ["%" \\format (.only format)]]]
- [macro
- ["[0]" code]
- ["[0]" template]]]]
+ ["$" documentation]]]
[\\library
["[0]" /]])
diff --git a/stdlib/source/documentation/lux/data/collection/sequence.lux b/stdlib/source/documentation/lux/data/collection/sequence.lux
index 283eca310..9bc09f736 100644
--- a/stdlib/source/documentation/lux/data/collection/sequence.lux
+++ b/stdlib/source/documentation/lux/data/collection/sequence.lux
@@ -1,13 +1,7 @@
(.require
[library
[lux (.except list has revised)
- ["$" documentation]
- [data
- ["[0]" text (.only \n)
- ["%" \\format (.only format)]]]
- [macro
- ["[0]" code]
- ["[0]" template]]]]
+ ["$" documentation]]]
[\\library
["[0]" /]])
diff --git a/stdlib/source/documentation/lux/data/collection/stream.lux b/stdlib/source/documentation/lux/data/collection/stream.lux
index 5a5021150..393765c2f 100644
--- a/stdlib/source/documentation/lux/data/collection/stream.lux
+++ b/stdlib/source/documentation/lux/data/collection/stream.lux
@@ -3,11 +3,8 @@
[lux (.except list pattern)
["$" documentation]
[data
- ["[0]" text (.only \n)
- ["%" \\format (.only format)]]]
- [macro
- ["[0]" code]
- ["[0]" template]]]]
+ [text (.only \n)
+ ["%" \\format (.only format)]]]]]
[\\library
["[0]" /]])
diff --git a/stdlib/source/documentation/lux/data/color.lux b/stdlib/source/documentation/lux/data/color.lux
index fade67993..c76cf4c45 100644
--- a/stdlib/source/documentation/lux/data/color.lux
+++ b/stdlib/source/documentation/lux/data/color.lux
@@ -7,7 +7,8 @@
["%" \\format (.only format)]]]
[macro
[syntax (.only syntax)]
- ["[0]" template]
+ ["[0]" template]]
+ [meta
["[0]" code (.only)
["<[1]>" \\parser]]]]]
[\\library
@@ -91,10 +92,10 @@
($.documentation /.Pigment
"A color with some degree of transparency.")
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[(`` ($.documentation <name>
(format "A "
- (text.replaced "_" "-" (~~ (template.text [<name>])))
+ (text.replaced "_" "-" (,, (template.text [<name>])))
" color scheme.")))]
[/.triad]
diff --git a/stdlib/source/documentation/lux/data/color/named.lux b/stdlib/source/documentation/lux/data/color/named.lux
index 94f5df07b..f7da245b1 100644
--- a/stdlib/source/documentation/lux/data/color/named.lux
+++ b/stdlib/source/documentation/lux/data/color/named.lux
@@ -5,9 +5,6 @@
[data
["[0]" text (.only)
["%" \\format (.only format)]]]
- [macro
- ["[0]" code]
- ["[0]" template]]
[math
[number
["[0]" nat (.use "hex#[0]" hex)]]]]]
@@ -19,7 +16,7 @@
(.List $.Module)
($.module /._
""
- [(~~ (with_template [<name>]
+ [(,, (with_template [<name>]
[($.documentation <name>
(let [[red green blue] (//.rgb <name>)
[_ name] (symbol <name>)]
diff --git a/stdlib/source/documentation/lux/data/format/json.lux b/stdlib/source/documentation/lux/data/format/json.lux
index 2051ee55c..ccf18365e 100644
--- a/stdlib/source/documentation/lux/data/format/json.lux
+++ b/stdlib/source/documentation/lux/data/format/json.lux
@@ -55,7 +55,7 @@
"A JSON object field setter."
[(has key value json)])
- (~~ (with_template [<name> <desc>]
+ (,, (with_template [<name> <desc>]
[($.documentation <name>
(format "A JSON object field getter for " <desc> "."))]
diff --git a/stdlib/source/documentation/lux/data/text/encoding.lux b/stdlib/source/documentation/lux/data/text/encoding.lux
index 6a8652b67..42b3ff87e 100644
--- a/stdlib/source/documentation/lux/data/text/encoding.lux
+++ b/stdlib/source/documentation/lux/data/text/encoding.lux
@@ -21,7 +21,7 @@
($.documentation /.Encoding
"Encoding formats for text.")
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
(format "'" (/.name <name>) "' text encoding. "))]
diff --git a/stdlib/source/documentation/lux/data/text/unicode/block.lux b/stdlib/source/documentation/lux/data/text/unicode/block.lux
index 0ee609dd9..2021ce0d1 100644
--- a/stdlib/source/documentation/lux/data/text/unicode/block.lux
+++ b/stdlib/source/documentation/lux/data/text/unicode/block.lux
@@ -35,7 +35,7 @@
""
[(within? block char)])
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
(let [[_ name] (symbol <name>)]
(format (hex#encoded (/.start <name>))
diff --git a/stdlib/source/documentation/lux/extension.lux b/stdlib/source/documentation/lux/extension.lux
index 729abbec5..35b5fbd72 100644
--- a/stdlib/source/documentation/lux/extension.lux
+++ b/stdlib/source/documentation/lux/extension.lux
@@ -9,7 +9,8 @@
[collection
["[0]" sequence]]]
[macro
- ["[0]" template]
+ ["[0]" template]]
+ [meta
["[0]" code
["<[1]>" \\parser]]]
[tool
diff --git a/stdlib/source/documentation/lux/ffi.jvm.lux b/stdlib/source/documentation/lux/ffi.jvm.lux
index 436c252b6..760a625f0 100644
--- a/stdlib/source/documentation/lux/ffi.jvm.lux
+++ b/stdlib/source/documentation/lux/ffi.jvm.lux
@@ -22,9 +22,9 @@
($.default /.cannot_convert_to_jvm_type)
($.default /.cannot_cast_to_non_object)
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[(`` ($.documentation <name>
- (format "The type of a (boxed) " (~~ (template.text [<name>])) " object.")))]
+ (format "The type of a (boxed) " (,, (template.text [<name>])) " object.")))]
[/.Boolean]
[/.Byte]
@@ -36,9 +36,9 @@
[/.Character]
))
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[(`` ($.documentation <name>
- (format "The type of an (unboxed) " (~~ (template.text [<name>])) " value.")))]
+ (format "The type of an (unboxed) " (,, (template.text [<name>])) " value.")))]
[/.boolean]
[/.byte]
@@ -50,7 +50,7 @@
[/.char]
))
- (~~ (with_template [<name> <from> <to>]
+ (,, (with_template [<name> <from> <to>]
[(`` ($.documentation <name>
"Type converter."))]
diff --git a/stdlib/source/documentation/lux/ffi.old.lux b/stdlib/source/documentation/lux/ffi.old.lux
index 460e8512e..ce7eb423e 100644
--- a/stdlib/source/documentation/lux/ffi.old.lux
+++ b/stdlib/source/documentation/lux/ffi.old.lux
@@ -18,7 +18,7 @@
($.default /.State)
($.default /.Inheritance)
- (~~ (with_template [<name> <from> <to>]
+ (,, (with_template [<name> <from> <to>]
[($.documentation <name>
"Type converter.")]
diff --git a/stdlib/source/documentation/lux/macro.lux b/stdlib/source/documentation/lux/macro.lux
index 7e6c34963..da66da131 100644
--- a/stdlib/source/documentation/lux/macro.lux
+++ b/stdlib/source/documentation/lux/macro.lux
@@ -8,7 +8,6 @@
[collection
["[0]" list]]]]]
["[0]" /
- ["[1][0]" code]
["[1][0]" local]
["[1][0]" syntax]
["[1][0]" template]]
@@ -47,11 +46,11 @@
(syntax (_ [lock any
body any])
(with_symbols [g!lock g!body g!_]
- (in (list (` (let [(~ g!lock) (~ lock)
- (~ g!_) ("jvm monitorenter" (~ g!lock))
- (~ g!body) (~ body)
- (~ g!_) ("jvm monitorexit" (~ g!lock))]
- (~ g!body))))))))])
+ (in (list (` (let [(, g!lock) (, lock)
+ (, g!_) ("jvm monitorenter" (, g!lock))
+ (, g!body) (, body)
+ (, g!_) ("jvm monitorexit" (, g!lock))]
+ (, g!body))))))))])
($.documentation /.one_expansion
"Works just like expand, except that it ensures that the output is a single Code token."
@@ -95,7 +94,6 @@
(def (foo bar baz)
(-> Int Int Int)
(int.+ bar baz)))])]
- [/code.documentation
- /local.documentation
+ [/local.documentation
/syntax.documentation
/template.documentation]))
diff --git a/stdlib/source/documentation/lux/macro/syntax.lux b/stdlib/source/documentation/lux/macro/syntax.lux
index fc7675a8c..30dd6b08a 100644
--- a/stdlib/source/documentation/lux/macro/syntax.lux
+++ b/stdlib/source/documentation/lux/macro/syntax.lux
@@ -39,7 +39,7 @@
(with_brackets (spaced (list#each super_class_decl$ interfaces)))
(with_brackets (spaced (list#each constructor_arg$ constructor_args)))
(with_brackets (spaced (list#each (method_def$ id) methods))))))]
- (in (list (` ((~ (code.text def_code)))))))))])]
+ (in (list (` ((, (code.text def_code)))))))))])]
[/check.documentation
/declaration.documentation
/definition.documentation
diff --git a/stdlib/source/documentation/lux/math/number.lux b/stdlib/source/documentation/lux/math/number.lux
index c63a71371..2420d347a 100644
--- a/stdlib/source/documentation/lux/math/number.lux
+++ b/stdlib/source/documentation/lux/math/number.lux
@@ -25,7 +25,7 @@
(.List $.Module)
($.module /._
""
- [(~~ (with_template [<name> <encoding> <no_commas> <with_commas>]
+ [(,, (with_template [<name> <encoding> <no_commas> <with_commas>]
[($.documentation <name>
(format "Given syntax for a " <encoding> " number, generates a Nat, an Int, a Rev or a Frac.")
[<no_commas>]
diff --git a/stdlib/source/documentation/lux/math/number/frac.lux b/stdlib/source/documentation/lux/math/number/frac.lux
index 9fd4f06ce..8ae35ef2e 100644
--- a/stdlib/source/documentation/lux/math/number/frac.lux
+++ b/stdlib/source/documentation/lux/math/number/frac.lux
@@ -88,7 +88,7 @@
"Frac(tion) greater-than or equal."
[(>= reference sample)])
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
@@ -103,7 +103,7 @@
""
[(/% param subject)])
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
@@ -111,7 +111,7 @@
[/.max "Frac(tion) minimum."]
))
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
diff --git a/stdlib/source/documentation/lux/math/number/i64.lux b/stdlib/source/documentation/lux/math/number/i64.lux
index b11806f7d..0a6cef889 100644
--- a/stdlib/source/documentation/lux/math/number/i64.lux
+++ b/stdlib/source/documentation/lux/math/number/i64.lux
@@ -27,7 +27,7 @@
($.default /.left_rotated)
($.default /.right_rotated)
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
@@ -60,7 +60,7 @@
"Count the number of 1s in a bit-map."
[(ones it)])
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
diff --git a/stdlib/source/documentation/lux/math/number/int.lux b/stdlib/source/documentation/lux/math/number/int.lux
index 088f8e87f..70cec4be4 100644
--- a/stdlib/source/documentation/lux/math/number/int.lux
+++ b/stdlib/source/documentation/lux/math/number/int.lux
@@ -55,7 +55,7 @@
"Int(eger) greater-than or equal."
[(>= reference sample)])
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
@@ -63,7 +63,7 @@
[/.max "Int(eger) maximum."]
))
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
diff --git a/stdlib/source/documentation/lux/math/number/nat.lux b/stdlib/source/documentation/lux/math/number/nat.lux
index 5bf379bba..62c72b8b8 100644
--- a/stdlib/source/documentation/lux/math/number/nat.lux
+++ b/stdlib/source/documentation/lux/math/number/nat.lux
@@ -32,7 +32,7 @@
($.default /.decimal)
($.default /.hash)
- (~~ (with_template [<name> <documentation>]
+ (,, (with_template [<name> <documentation>]
[($.documentation <name>
<documentation>)]
@@ -49,7 +49,7 @@
[/.% "Nat(ural) remainder."]
))
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
diff --git a/stdlib/source/documentation/lux/math/number/rev.lux b/stdlib/source/documentation/lux/math/number/rev.lux
index 5450725b8..d93c8e3c5 100644
--- a/stdlib/source/documentation/lux/math/number/rev.lux
+++ b/stdlib/source/documentation/lux/math/number/rev.lux
@@ -62,7 +62,7 @@
"Rev(olution) greater-than or equal."
[(>= reference sample)])
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
@@ -70,7 +70,7 @@
[/.max "Rev(olution) maximum."]
))
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
diff --git a/stdlib/source/documentation/lux/meta.lux b/stdlib/source/documentation/lux/meta.lux
index dfe0b27bd..72315f3d2 100644
--- a/stdlib/source/documentation/lux/meta.lux
+++ b/stdlib/source/documentation/lux/meta.lux
@@ -10,8 +10,10 @@
[\\library
["[0]" /]]
["[0]" /
+ ["[1][0]" code]
["[1][0]" location]
- ["[1][0]" symbol]])
+ ["[1][0]" symbol]
+ ["[1][0]" type]])
(.def .public documentation
(.List $.Module)
@@ -162,5 +164,7 @@
($.documentation /.eval
""
[(eval type code)])]
- [/location.documentation
- /symbol.documentation]))
+ [/code.documentation
+ /location.documentation
+ /symbol.documentation
+ /type.documentation]))
diff --git a/stdlib/source/documentation/lux/type.lux b/stdlib/source/documentation/lux/meta/type.lux
index a458db5d3..e4b93f034 100644
--- a/stdlib/source/documentation/lux/type.lux
+++ b/stdlib/source/documentation/lux/meta/type.lux
@@ -27,7 +27,7 @@
"Basic functionality for working with types."
[($.default /.equivalence)
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
"The number of parameters, and the body, of a quantified type.")]
@@ -43,7 +43,7 @@
"The quantified type, and its parameters, for a type-application."
[(flat_application type)])
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
"The members of a composite type.")]
@@ -72,7 +72,7 @@
"A type without any names covering it."
[(anonymous type)])
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
"A composite type, constituted by the given member types.")]
@@ -88,7 +88,7 @@
"An un-evaluated type application, with the given quantified type, and parameters."
[(application params quant)])
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
"A quantified type, with the given number of parameters, and body.")]
diff --git a/stdlib/source/documentation/lux/type/check.lux b/stdlib/source/documentation/lux/meta/type/check.lux
index e5a7130cf..e5a7130cf 100644
--- a/stdlib/source/documentation/lux/type/check.lux
+++ b/stdlib/source/documentation/lux/meta/type/check.lux
diff --git a/stdlib/source/documentation/lux/type/dynamic.lux b/stdlib/source/documentation/lux/meta/type/dynamic.lux
index 861d7143f..861d7143f 100644
--- a/stdlib/source/documentation/lux/type/dynamic.lux
+++ b/stdlib/source/documentation/lux/meta/type/dynamic.lux
diff --git a/stdlib/source/documentation/lux/type/implicit.lux b/stdlib/source/documentation/lux/meta/type/implicit.lux
index 9490d4aee..9490d4aee 100644
--- a/stdlib/source/documentation/lux/type/implicit.lux
+++ b/stdlib/source/documentation/lux/meta/type/implicit.lux
diff --git a/stdlib/source/documentation/lux/type/poly.lux b/stdlib/source/documentation/lux/meta/type/poly.lux
index 979ae2899..979ae2899 100644
--- a/stdlib/source/documentation/lux/type/poly.lux
+++ b/stdlib/source/documentation/lux/meta/type/poly.lux
diff --git a/stdlib/source/documentation/lux/type/primitive.lux b/stdlib/source/documentation/lux/meta/type/primitive.lux
index a015098b7..d531ffb98 100644
--- a/stdlib/source/documentation/lux/type/primitive.lux
+++ b/stdlib/source/documentation/lux/meta/type/primitive.lux
@@ -24,7 +24,7 @@
"A specific abstract/nominal type still being defined somewhere in the scope."
[(specific name)])
- (~~ (with_template [<name> <from> <$> <to>]
+ (,, (with_template [<name> <from> <$> <to>]
[($.documentation <name>
"Type-casting macro for abstract/nominal types."
[(|> value
diff --git a/stdlib/source/documentation/lux/type/quotient.lux b/stdlib/source/documentation/lux/meta/type/quotient.lux
index 1451674e6..1451674e6 100644
--- a/stdlib/source/documentation/lux/type/quotient.lux
+++ b/stdlib/source/documentation/lux/meta/type/quotient.lux
diff --git a/stdlib/source/documentation/lux/type/refinement.lux b/stdlib/source/documentation/lux/meta/type/refinement.lux
index 304b4b266..304b4b266 100644
--- a/stdlib/source/documentation/lux/type/refinement.lux
+++ b/stdlib/source/documentation/lux/meta/type/refinement.lux
diff --git a/stdlib/source/documentation/lux/type/resource.lux b/stdlib/source/documentation/lux/meta/type/resource.lux
index fa673174a..b4dcfdd6f 100644
--- a/stdlib/source/documentation/lux/type/resource.lux
+++ b/stdlib/source/documentation/lux/meta/type/resource.lux
@@ -56,7 +56,7 @@
(format "A resource locked by a key."
\n "The 'key' represents the right to access/consume a resource."))
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
"Makes a value into a resource and adds the key/access-right to it to the ambient keyring for future use.")]
@@ -80,7 +80,7 @@
right (read ! res|right)]
(in (format left right)))])
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
"Group/un-group keys in the keyring into/out-of tuples."
[(do (monad !)
diff --git a/stdlib/source/documentation/lux/meta/type/unit.lux b/stdlib/source/documentation/lux/meta/type/unit.lux
new file mode 100644
index 000000000..1f2f6918e
--- /dev/null
+++ b/stdlib/source/documentation/lux/meta/type/unit.lux
@@ -0,0 +1,89 @@
+(.require
+ [library
+ [lux (.except and)
+ ["$" documentation]
+ [data
+ ["[0]" text (.only \n)
+ ["%" \\format (.only format)]]]
+ [macro
+ ["[0]" template]]
+ [math
+ [number
+ ["[0]" ratio]]]]]
+ [\\library
+ ["[0]" /]])
+
+(`` (.def .public documentation
+ (.List $.Module)
+ ($.module /._
+ ""
+ [($.default /.Gram)
+ ($.default /.Meter)
+ ($.default /.Litre)
+ ($.default /.Second)
+ ... ($.default /.pure)
+ ($.default /.number)
+ ($.default /.equivalence)
+ ($.default /.order)
+ ($.default /.enum)
+ ... ($.default /.Kilo)
+ ... ($.default /.Mega)
+ ... ($.default /.Giga)
+ ... ($.default /.Milli)
+ ... ($.default /.Micro)
+ ... ($.default /.Nano)
+ ($.default /.+)
+ ($.default /.-)
+ ($.default /.*)
+ ($.default /./)
+
+ ($.documentation (/.Measure unit)
+ "A quantity with an associated unit of measurement.")
+
+ ($.documentation (/.Unit unit)
+ "A unit of measurement, to qualify numbers with.")
+
+ ... ($.documentation (/.Scale scale)
+ ... "A scale of magnitude.")
+
+ ... ($.documentation /.Pure
+ ... "A pure, unit-less measure.")
+
+ ($.documentation /.unit
+ (format "Define a unit of measurement."
+ \n "Both the name of the type, and the name of the Unit implementation must be specified.")
+ [(def feet (unit []))])
+
+ ... ($.documentation /.scale
+ ... "Define a scale of magnitude."
+ ... [(def bajillion (scale [1 1,234,567,890]))])
+
+ ... ($.documentation /.re_scaled
+ ... ""
+ ... [(re_scaled from to measure)])
+
+ ... (,, (with_template [<type> <scale>]
+ ... [(`` ($.documentation <scale>
+ ... (let [numerator (the [/.ratio ratio.#numerator] <scale>)
+ ... denominator (the [/.ratio ratio.#denominator] <scale>)]
+ ... (format "The '" (,, (template.text [<scale>])) "' scale, from " (%.nat numerator) " to " (%.nat denominator) "."))))]
+
+ ... [/.Kilo /.kilo]
+ ... [/.Mega /.mega]
+ ... [/.Giga /.giga]
+
+ ... [/.Milli /.milli]
+ ... [/.Micro /.micro]
+ ... [/.Nano /.nano]
+ ... ))
+
+ (,, (with_template [<unit>]
+ [(`` ($.documentation <unit>
+ (format "The '" (,, (template.text [<unit>])) "' unit of meaurement.")))]
+
+ [/.gram]
+ [/.meter]
+ [/.litre]
+ [/.second]
+ ))]
+ [])))
diff --git a/stdlib/source/documentation/lux/type/variance.lux b/stdlib/source/documentation/lux/meta/type/variance.lux
index e3b377fea..e3b377fea 100644
--- a/stdlib/source/documentation/lux/type/variance.lux
+++ b/stdlib/source/documentation/lux/meta/type/variance.lux
diff --git a/stdlib/source/documentation/lux/static.lux b/stdlib/source/documentation/lux/static.lux
index 08b82e86c..9ae73aae8 100644
--- a/stdlib/source/documentation/lux/static.lux
+++ b/stdlib/source/documentation/lux/static.lux
@@ -14,7 +14,7 @@
(.List $.Module)
($.module /._
""
- [(~~ (with_template [<name> <type>]
+ [(,, (with_template [<name> <type>]
[($.documentation <name>
(%.code (' (<name>
(is <type>
@@ -35,7 +35,7 @@
(is ???
(value generating expression)))])
- (~~ (with_template [<name> <type>]
+ (,, (with_template [<name> <type>]
[($.documentation <name>
(%.code (' (is <type>
(<name>)))))]
diff --git a/stdlib/source/documentation/lux/time.lux b/stdlib/source/documentation/lux/time.lux
index 3041638d5..59f609b05 100644
--- a/stdlib/source/documentation/lux/time.lux
+++ b/stdlib/source/documentation/lux/time.lux
@@ -31,7 +31,7 @@
($.default /.enum)
($.default /.parser)
- (~~ (with_template [<name> <doc>]
+ (,, (with_template [<name> <doc>]
[($.documentation <name>
<doc>)]
diff --git a/stdlib/source/documentation/lux/type/unit.lux b/stdlib/source/documentation/lux/type/unit.lux
deleted file mode 100644
index c7f4948ab..000000000
--- a/stdlib/source/documentation/lux/type/unit.lux
+++ /dev/null
@@ -1,89 +0,0 @@
-(.require
- [library
- [lux (.except and)
- ["$" documentation]
- [data
- ["[0]" text (.only \n)
- ["%" \\format (.only format)]]]
- [macro
- ["[0]" template]]
- [math
- [number
- ["[0]" ratio]]]]]
- [\\library
- ["[0]" /]])
-
-(.def .public documentation
- (.List $.Module)
- ($.module /._
- ""
- [($.default /.Gram)
- ($.default /.Meter)
- ($.default /.Litre)
- ($.default /.Second)
- ($.default /.pure)
- ($.default /.number)
- ($.default /.equivalence)
- ($.default /.order)
- ($.default /.enum)
- ($.default /.Kilo)
- ($.default /.Mega)
- ($.default /.Giga)
- ($.default /.Milli)
- ($.default /.Micro)
- ($.default /.Nano)
- ($.default /.+)
- ($.default /.-)
- ($.default /.*)
- ($.default /./)
-
- ($.documentation (/.Measure unit)
- "A quantity with an associated unit of measurement.")
-
- ($.documentation (/.Unit unit)
- "A unit of measurement, to qualify numbers with.")
-
- ($.documentation (/.Scale scale)
- "A scale of magnitude.")
-
- ($.documentation /.Pure
- "A pure, unit-less measure.")
-
- ($.documentation /.unit
- (format "Define a unit of measurement."
- \n "Both the name of the type, and the name of the Unit implementation must be specified.")
- [(def feet (unit []))])
-
- ($.documentation /.scale
- "Define a scale of magnitude."
- [(def bajillion (scale [1 1,234,567,890]))])
-
- ($.documentation /.re_scaled
- ""
- [(re_scaled from to measure)])
-
- (~~ (with_template [<type> <scale>]
- [(`` ($.documentation <scale>
- (let [numerator (the [/.ratio ratio.#numerator] <scale>)
- denominator (the [/.ratio ratio.#denominator] <scale>)]
- (format "The '" (~~ (template.text [<scale>])) "' scale, from " (%.nat numerator) " to " (%.nat denominator) "."))))]
-
- [/.Kilo /.kilo]
- [/.Mega /.mega]
- [/.Giga /.giga]
-
- [/.Milli /.milli]
- [/.Micro /.micro]
- [/.Nano /.nano]
- ))
-
- (~~ (with_template [<unit>]
- [(`` ($.documentation <unit>
- (format "The '" (~~ (template.text [<unit>])) "' unit of meaurement.")))]
-
- [/.gram]
- [/.meter]
- [/.litre]
- [/.second]
- ))]
- []))
diff --git a/stdlib/source/documentation/lux/world/console.lux b/stdlib/source/documentation/lux/world/console.lux
index 44376fa63..f20cac8ef 100644
--- a/stdlib/source/documentation/lux/world/console.lux
+++ b/stdlib/source/documentation/lux/world/console.lux
@@ -16,10 +16,10 @@
(`` (`` ($.module /._
""
[($.default /.async)
- (~~ (for @.jvm (~~ (these ($.default /.cannot_open)
+ (,, (for @.jvm (,, (these ($.default /.cannot_open)
($.default /.cannot_close)
($.default /.default)))
- (~~ (these))))
+ (,, (these))))
($.documentation (/.Console !)
"An interface to console/terminal I/O.")
diff --git a/stdlib/source/documentation/lux/world/file.lux b/stdlib/source/documentation/lux/world/file.lux
index 3ae7449e6..1e99499e9 100644
--- a/stdlib/source/documentation/lux/world/file.lux
+++ b/stdlib/source/documentation/lux/world/file.lux
@@ -23,8 +23,8 @@
($.default /.cannot_delete)
($.default /.cannot_make_directory)
($.default /.cannot_find_directory)
- (~~ (for @.lua (~~ (these))
- (~~ (these ($.default /.default)))))
+ (,, (for @.lua (,, (these))
+ (,, (these ($.default /.default)))))
($.documentation /.Path
"A path to a file or a directory in a file-system.")
diff --git a/stdlib/source/documentation/lux/world/file/watch.lux b/stdlib/source/documentation/lux/world/file/watch.lux
index c4c3f371c..cc7dbdea9 100644
--- a/stdlib/source/documentation/lux/world/file/watch.lux
+++ b/stdlib/source/documentation/lux/world/file/watch.lux
@@ -28,9 +28,9 @@
($.documentation /.Concern
"A particular concern to watch-out for.")
- ($.documentation /.also
+ ($.documentation /.and
""
- [(also left right)])
+ [(and left right)])
($.documentation (/.Watcher !)
"Machinery for watching a file-system for changes to files and directories.")
@@ -45,7 +45,7 @@
\n "Must be given a path separator for the file-system.")
[(mock separator)])
- (~~ (for @.jvm (~~ (these ($.documentation /.default
+ (,, (for @.jvm (,, (these ($.documentation /.default
"The default watcher for the default file-system.")))
- (~~ (these))))]
+ (,, (these))))]
[]))))
diff --git a/stdlib/source/documentation/lux/world/net/http/client.lux b/stdlib/source/documentation/lux/world/net/http/client.lux
index c0a113a36..fb6e83727 100644
--- a/stdlib/source/documentation/lux/world/net/http/client.lux
+++ b/stdlib/source/documentation/lux/world/net/http/client.lux
@@ -17,13 +17,13 @@
""
[($.default /.async)
($.default /.headers)
- (~~ (for @.jvm (~~ (these ($.default /.default)))
- (~~ (these))))
+ (,, (for @.jvm (,, (these ($.default /.default)))
+ (,, (these))))
($.documentation (/.Client !)
"A HTTP client capable of issuing requests to a HTTP server.")
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
(format "A " (text.upper_cased (template.text [<name>])) " request."))]
diff --git a/stdlib/source/documentation/lux/world/net/http/status.lux b/stdlib/source/documentation/lux/world/net/http/status.lux
index 3d34f709a..81003a4b0 100644
--- a/stdlib/source/documentation/lux/world/net/http/status.lux
+++ b/stdlib/source/documentation/lux/world/net/http/status.lux
@@ -14,7 +14,7 @@
(.List $.Module)
($.module /._
""
- [(~~ (with_template [<name>]
+ [(,, (with_template [<name>]
[($.documentation <name>
(|> (template.text [<name>])
(text.replaced "_" " ")
diff --git a/stdlib/source/documentation/lux/world/output/video/resolution.lux b/stdlib/source/documentation/lux/world/output/video/resolution.lux
index 6efada0de..a0b2e9aaa 100644
--- a/stdlib/source/documentation/lux/world/output/video/resolution.lux
+++ b/stdlib/source/documentation/lux/world/output/video/resolution.lux
@@ -20,7 +20,7 @@
($.documentation /.Resolution
"A screen resolution.")
- (~~ (with_template [<name>]
+ (,, (with_template [<name>]
[($.documentation <name>
(let [name (|> (template.text [<name>])
(text.replaced "_" " ")
diff --git a/stdlib/source/documentation/lux/world/shell.lux b/stdlib/source/documentation/lux/world/shell.lux
index d6ae9df5f..4ff4e37c0 100644
--- a/stdlib/source/documentation/lux/world/shell.lux
+++ b/stdlib/source/documentation/lux/world/shell.lux
@@ -18,9 +18,9 @@
[($.default /.normal)
($.default /.error)
($.default /.async)
- (~~ (for @.jvm (~~ (these ($.default /.no_more_output)
+ (,, (for @.jvm (,, (these ($.default /.no_more_output)
($.default /.default)))
- (~~ (these))))
+ (,, (these))))
($.documentation /.Exit
"A program exit code.")