diff options
Diffstat (limited to 'stdlib/source/documentation/lux/math')
18 files changed, 881 insertions, 858 deletions
diff --git a/stdlib/source/documentation/lux/math/infix.lux b/stdlib/source/documentation/lux/math/infix.lux index 0e7b51380..89731c8ab 100644 --- a/stdlib/source/documentation/lux/math/infix.lux +++ b/stdlib/source/documentation/lux/math/infix.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,35 +8,36 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.infix - (format "Infix math syntax." - \n "The rules for infix syntax are simple." - \n "If you want your binary function to work well with it." - \n "Then take the argument to the right (y) as your first argument," - \n "and take the argument to the left (x) as your second argument.") - ["Binary functions" - (infix [x * +10]) - "=>" - (* +10 x)] - ["Nested infix" - (infix [[x + y] * [x - y]]) - "=>" - (* (- y x) (+ y x))] - ["Unary functions" - (infix [sin [x + y]]) - "=>" - (sin (+ y x))] - ["Also works with logic" - (infix [[x < y] and [y < z]]) - "=>" - (and (< z y) - (< y x))] - ["Forms are left as-is" - (infix [(* 3 9) gcd 450]) - "=>" - (gcd 450 (* 3 9))])] - [])) +(def .public documentation + (List $.Documentation) + (list ($.module /._ + "") + + ($.definition /.infix + (format "Infix math syntax." + \n "The rules for infix syntax are simple." + \n "If you want your binary function to work well with it." + \n "Then take the argument to the right (y) as your first argument," + \n "and take the argument to the left (x) as your second argument.") + ["Binary functions" + (infix [x * +10]) + "=>" + (* +10 x)] + ["Nested infix" + (infix [[x + y] * [x - y]]) + "=>" + (* (- y x) (+ y x))] + ["Unary functions" + (infix [sin [x + y]]) + "=>" + (sin (+ y x))] + ["Also works with logic" + (infix [[x < y] and [y < z]]) + "=>" + (and (< z y) + (< y x))] + ["Forms are left as-is" + (infix [(* 3 9) gcd 450]) + "=>" + (gcd 450 (* 3 9))]) + )) diff --git a/stdlib/source/documentation/lux/math/logic.lux b/stdlib/source/documentation/lux/math/logic.lux index 105055859..982ddcd1a 100644 --- a/stdlib/source/documentation/lux/math/logic.lux +++ b/stdlib/source/documentation/lux/math/logic.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except char) + [lux (.except) ["$" documentation] [data [text @@ -11,8 +11,8 @@ ["[1][0]" continuous] ["[1][0]" fuzzy]]) -(.def .public documentation - (.List $.Module) +(def .public documentation + (List $.Documentation) (all list#composite /continuous.documentation /fuzzy.documentation diff --git a/stdlib/source/documentation/lux/math/logic/continuous.lux b/stdlib/source/documentation/lux/math/logic/continuous.lux index f134a7236..f6198bfeb 100644 --- a/stdlib/source/documentation/lux/math/logic/continuous.lux +++ b/stdlib/source/documentation/lux/math/logic/continuous.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,22 +8,23 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - (format "Continuous logic using Rev values." - \n "Continuous logic is logic in the interval [0,1] instead of just the binary #0 and #1 options." - \n "Because Rev is being used, the interval is actual [0,1).") - [($.definition /.false) - ($.definition /.true) - ($.definition /.or) - ($.definition /.disjunction) - ($.definition /.and) - ($.definition /.conjunction) - ($.definition /.not) - ($.definition /.=) +(def .public documentation + (.List $.Documentation) + (list ($.module /._ + (format "Continuous logic using Rev values." + \n "Continuous logic is logic in the interval [0,1] instead of just the binary #0 and #1 options." + \n "Because Rev is being used, the interval is actual [0,1).")) - ($.definition /.implies - "" - [(implies consequent antecedent)])] - [])) + ($.definition /.false) + ($.definition /.true) + ($.definition /.or) + ($.definition /.disjunction) + ($.definition /.and) + ($.definition /.conjunction) + ($.definition /.not) + ($.definition /.=) + + ($.definition /.implies + "" + [(implies consequent antecedent)]) + )) diff --git a/stdlib/source/documentation/lux/math/logic/fuzzy.lux b/stdlib/source/documentation/lux/math/logic/fuzzy.lux index 222e6b086..19e0d1ef0 100644 --- a/stdlib/source/documentation/lux/math/logic/fuzzy.lux +++ b/stdlib/source/documentation/lux/math/logic/fuzzy.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,50 +8,51 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "Fuzzy logic, implemented on top of the Rev type." - [($.definition /.functor) - ($.definition /.empty) - ($.definition /.full) - ($.definition /.union) - ($.definition /.intersection) - ($.definition /.complement) - ($.definition /.of_set) - - ($.definition (/.Fuzzy it) - "A fuzzy set.") - - ($.definition /.membership - "" - [(membership set elem)]) - - ($.definition /.difference - "" - [(difference sub base)]) - - ($.definition /.of_predicate - "" - [(of_predicate predicate)]) - - ($.definition /.predicate - "" - [(predicate treshold set)]) - - ($.definition /.gradient - "" - [(gradient from to)]) - - ($.definition /.triangle - "" - [(triangle bottom middle top)]) - - ($.definition /.trapezoid - "" - [(trapezoid bottom middle_bottom middle_top top)]) - - ($.definition /.cut - "" - [(cut treshold set)])] - [])) +(def .public documentation + (.List $.Documentation) + (list ($.module /._ + "Fuzzy logic, implemented on top of the Rev type.") + + ($.definition /.functor) + ($.definition /.empty) + ($.definition /.full) + ($.definition /.union) + ($.definition /.intersection) + ($.definition /.complement) + ($.definition /.of_set) + + ($.definition (/.Fuzzy it) + "A fuzzy set.") + + ($.definition /.membership + "" + [(membership set elem)]) + + ($.definition /.difference + "" + [(difference sub base)]) + + ($.definition /.of_predicate + "" + [(of_predicate predicate)]) + + ($.definition /.predicate + "" + [(predicate treshold set)]) + + ($.definition /.gradient + "" + [(gradient from to)]) + + ($.definition /.triangle + "" + [(triangle bottom middle top)]) + + ($.definition /.trapezoid + "" + [(trapezoid bottom middle_bottom middle_top top)]) + + ($.definition /.cut + "" + [(cut treshold set)]) + )) diff --git a/stdlib/source/documentation/lux/math/modular.lux b/stdlib/source/documentation/lux/math/modular.lux index e78063d0a..e084f6942 100644 --- a/stdlib/source/documentation/lux/math/modular.lux +++ b/stdlib/source/documentation/lux/math/modular.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,41 +8,42 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.modulus) - ($.definition /.value) - ($.definition /.incorrect_modulus) - ($.definition /.codec) - - ($.definition /.=) - ($.definition /.<) - ($.definition /.<=) - ($.definition /.>) - ($.definition /.>=) - - ($.definition /.equivalence) - ($.definition /.order) - - ($.definition /.+) - ($.definition /.-) - ($.definition /.*) - - ($.definition /.addition) - ($.definition /.multiplication) - ($.definition /.inverse) - ($.definition /.moduli_are_not_equal) - - ($.definition (/.Mod %) - "A number under a modulus.") - - ($.definition /.modular - "" - [(modular modulus value)]) - - ($.definition /.adapter - "" - [(adapter reference subject)])] - [])) +(def .public documentation + (List $.Documentation) + (list ($.module /._ + "") + + ($.definition /.modulus) + ($.definition /.value) + ($.definition /.incorrect_modulus) + ($.definition /.codec) + + ($.definition /.=) + ($.definition /.<) + ($.definition /.<=) + ($.definition /.>) + ($.definition /.>=) + + ($.definition /.equivalence) + ($.definition /.order) + + ($.definition /.+) + ($.definition /.-) + ($.definition /.*) + + ($.definition /.addition) + ($.definition /.multiplication) + ($.definition /.inverse) + ($.definition /.moduli_are_not_equal) + + ($.definition (/.Mod %) + "A number under a modulus.") + + ($.definition /.modular + "" + [(modular modulus value)]) + + ($.definition /.adapter + "" + [(adapter reference subject)]) + )) diff --git a/stdlib/source/documentation/lux/math/modulus.lux b/stdlib/source/documentation/lux/math/modulus.lux index 76e071559..d699b1a18 100644 --- a/stdlib/source/documentation/lux/math/modulus.lux +++ b/stdlib/source/documentation/lux/math/modulus.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,27 +8,28 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.zero_cannot_be_a_modulus) - ($.definition /.modulus) - ($.definition /.divisor) - ($.definition /.=) +(def .public documentation + (List $.Documentation) + (list ($.module /._ + "") - ($.definition (/.Modulus %) - (format "A number used as a modulus in modular arithmetic." - \n "It cannot be 0.")) + ($.definition /.zero_cannot_be_a_modulus) + ($.definition /.modulus) + ($.definition /.divisor) + ($.definition /.=) - ($.definition /.congruent? - "" - [(congruent? modulus reference subject)]) + ($.definition (/.Modulus %) + (format "A number used as a modulus in modular arithmetic." + \n "It cannot be 0.")) - ($.definition /.literal - "" - ["Success!" - (literal 123)] - ["Failure!" - (literal 0)])] - [])) + ($.definition /.congruent? + "" + [(congruent? modulus reference subject)]) + + ($.definition /.literal + "" + ["Success!" + (literal 123)] + ["Failure!" + (literal 0)]) + )) diff --git a/stdlib/source/documentation/lux/math/number.lux b/stdlib/source/documentation/lux/math/number.lux index a16b5a53c..f414ab616 100644 --- a/stdlib/source/documentation/lux/math/number.lux +++ b/stdlib/source/documentation/lux/math/number.lux @@ -1,10 +1,12 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) - ["%" \\format (.only format)]]]]] + ["%" \\format (.only format)]] + [collection + ["[0]" list (.use "[1]#[0]" monoid)]]]]] [\\library ["[0]" /]] ["[0]" / @@ -19,28 +21,33 @@ ["[1][0]" ratio] ["[1][0]" complex]]) -(`` (.def .public documentation - (.List $.Module) - ($.module /._ - "" - [(,, (with_template [<name> <encoding> <no_commas> <with_commas>] - [($.definition <name> - (format "Given syntax for a " <encoding> " number, generates a Nat, an Int, a Rev or a Frac.") - [<no_commas>] - ["Allows for the presence of commas (,) among the digits." - <with_commas>])] +(`` (def .public documentation + (List $.Documentation) + (list.partial ($.module /._ + "") - [/.bin "binary" (bin "11001001") (bin "11,00,10,01")] - [/.oct "octal" (oct "615243") (oct "615,243")] - [/.hex "hexadecimal" (hex "deadBEEF") (hex "dead,BEEF")] - ))] - [/i8.documentation - /i16.documentation - /i32.documentation - /i64.documentation - /nat.documentation - /int.documentation - /rev.documentation - /frac.documentation - /ratio.documentation - /complex.documentation]))) + (,, (with_template [<name> <encoding> <no_commas> <with_commas>] + [($.definition <name> + (format "Given syntax for a " <encoding> " number, generates a Nat, an Int, a Rev or a Frac.") + [<no_commas>] + ["Allows for the presence of commas (,) among the digits." + <with_commas>])] + + [/.bin "binary" (bin "11001001") (bin "11,00,10,01")] + [/.oct "octal" (oct "615243") (oct "615,243")] + [/.hex "hexadecimal" (hex "deadBEEF") (hex "dead,BEEF")] + )) + + (all list#composite + /i8.documentation + /i16.documentation + /i32.documentation + /i64.documentation + /nat.documentation + /int.documentation + /rev.documentation + /frac.documentation + /ratio.documentation + /complex.documentation + ) + ))) diff --git a/stdlib/source/documentation/lux/math/number/complex.lux b/stdlib/source/documentation/lux/math/number/complex.lux index b47992832..2df1f2a71 100644 --- a/stdlib/source/documentation/lux/math/number/complex.lux +++ b/stdlib/source/documentation/lux/math/number/complex.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,53 +8,54 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "Complex arithmetic." - [($.definition /.i) - ($.definition /.+one) - ($.definition /.-one) - ($.definition /.zero) - ($.definition /.not_a_number?) - ($.definition /.=) - ($.definition /.+) - ($.definition /.-) - ($.definition /.equivalence) - ($.definition /.opposite) - ($.definition /.signum) - ($.definition /.conjugate) - ($.definition /.*') - ($.definition /.*) - ($.definition /./) - ($.definition /./') - ($.definition /.%) - ($.definition /.cos) - ($.definition /.cosh) - ($.definition /.sin) - ($.definition /.sinh) - ($.definition /.tan) - ($.definition /.tanh) - ($.definition /.abs) - ($.definition /.exp) - ($.definition /.log) - ($.definition /.pow) - ($.definition /.pow') - ($.definition /.root_2) - ($.definition /.reciprocal) - ($.definition /.acos) - ($.definition /.asin) - ($.definition /.atan) - ($.definition /.argument) - ($.definition /.roots) - ($.definition /.approximately?) +(def .public documentation + (.List $.Documentation) + (list ($.module /._ + "Complex arithmetic.") - ($.definition /.Complex - "A complex number.") + ($.definition /.i) + ($.definition /.+one) + ($.definition /.-one) + ($.definition /.zero) + ($.definition /.not_a_number?) + ($.definition /.=) + ($.definition /.+) + ($.definition /.-) + ($.definition /.equivalence) + ($.definition /.opposite) + ($.definition /.signum) + ($.definition /.conjugate) + ($.definition /.*') + ($.definition /.*) + ($.definition /./) + ($.definition /./') + ($.definition /.%) + ($.definition /.cos) + ($.definition /.cosh) + ($.definition /.sin) + ($.definition /.sinh) + ($.definition /.tan) + ($.definition /.tanh) + ($.definition /.abs) + ($.definition /.exp) + ($.definition /.log) + ($.definition /.pow) + ($.definition /.pow') + ($.definition /.root_2) + ($.definition /.reciprocal) + ($.definition /.acos) + ($.definition /.asin) + ($.definition /.atan) + ($.definition /.argument) + ($.definition /.roots) + ($.definition /.approximately?) - ($.definition /.complex - "Complex literals." - [(complex real imaginary)] - ["The imaginary part can be omitted if it's +0.0." - (complex real)])] - [])) + ($.definition /.Complex + "A complex number.") + + ($.definition /.complex + "Complex literals." + [(complex real imaginary)] + ["The imaginary part can be omitted if it's +0.0." + (complex real)]) + )) diff --git a/stdlib/source/documentation/lux/math/number/frac.lux b/stdlib/source/documentation/lux/math/number/frac.lux index 67b334fd3..5094916d2 100644 --- a/stdlib/source/documentation/lux/math/number/frac.lux +++ b/stdlib/source/documentation/lux/math/number/frac.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,146 +8,147 @@ [\\library ["[0]" /]]) -(`` (.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.positive?) - ($.definition /.negative?) - ($.definition /.zero?) - ($.definition /.opposite) - ($.definition /.abs) - ($.definition /.signum) - ($.definition /.nat) - ($.definition /.int) - ($.definition /.rev) - ($.definition /.equivalence) - ($.definition /.order) - ($.definition /.smallest) - ($.definition /.biggest) - ($.definition /.addition) - ($.definition /.multiplication) - ($.definition /.minimum) - ($.definition /.maximum) - ($.definition /.number?) - ($.definition /.decimal) - ($.definition /.bits) - ($.definition /.of_bits) - ($.definition /.binary) - ($.definition /.octal) - ($.definition /.hex) - ($.definition /.hash) - - ($.definition /.cos) - ($.definition /.sin) - ($.definition /.tan) - ($.definition /.acos) - ($.definition /.asin) - ($.definition /.atan) - ($.definition /.exp) - ($.definition /.log) - ($.definition /.ceil) - ($.definition /.floor) - ($.definition /.root_2) - ($.definition /.root_3) - ($.definition /.round) - ($.definition /.factorial) - ($.definition /.hypotenuse) - ($.definition /.sinh) - ($.definition /.csch) - ($.definition /.cosh) - ($.definition /.sech) - ($.definition /.tanh) - ($.definition /.coth) - ($.definition /.asinh) - ($.definition /.acosh) - ($.definition /.atanh) - ($.definition /.acoth) - ($.definition /.asech) - ($.definition /.acsch) - - ($.definition /.= - "Frac(tion) equivalence." - [(= reference sample)]) - - ($.definition /.< - "Frac(tion) less-than." - [(< reference sample)]) - - ($.definition /.<= - "Frac(tion) less-than or equal." - [(<= reference sample)]) - - ($.definition /.> - "Frac(tion) greater-than." - [(> reference sample)]) - - ($.definition /.>= - "Frac(tion) greater-than or equal." - [(>= reference sample)]) - - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] - - [/.+ "Frac(tion) addition."] - [/.- "Frac(tion) substraction."] - [/.* "Frac(tion) multiplication."] - [/./ "Frac(tion) division."] - [/.% "Frac(tion) remainder."] - )) - - ($.definition /./% - "" - [(/% param subject)]) - - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] - - [/.min "Frac(tion) minimum."] - [/.max "Frac(tion) minimum."] - )) - - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] - - [/.not_a_number "Not a number."] - [/.positive_infinity "Positive infinity."] - [/.negative_infinity "Negative infinity."] - )) - - ($.definition /.not_a_number? - "Tests whether a frac is actually not-a-number." - [(not_a_number? it)]) - - ($.definition /.approximately? - "" - [(approximately? margin_of_error standard value)]) - - ($.definition /.mod - "" - [(mod divisor dividend)]) - - ($.definition /.e - "The base of the natural logarithm.") - - ($.definition /.pi - "The ratio of a circle's circumference to its diameter.") - - ($.definition /.tau - "The ratio of a circle's circumference to its radius.") - - ($.definition /.pow - "" - [(pow param subject)]) - - ($.definition /.atan_2 - "" - [(atan_2 x y)]) - - ($.definition /.log_by - "" - [(log_by base it)])] - []))) +(`` (def .public documentation + (.List $.Documentation) + (list ($.module /._ + "") + + ($.definition /.positive?) + ($.definition /.negative?) + ($.definition /.zero?) + ($.definition /.opposite) + ($.definition /.abs) + ($.definition /.signum) + ($.definition /.nat) + ($.definition /.int) + ($.definition /.rev) + ($.definition /.equivalence) + ($.definition /.order) + ($.definition /.smallest) + ($.definition /.biggest) + ($.definition /.addition) + ($.definition /.multiplication) + ($.definition /.minimum) + ($.definition /.maximum) + ($.definition /.number?) + ($.definition /.decimal) + ($.definition /.bits) + ($.definition /.of_bits) + ($.definition /.binary) + ($.definition /.octal) + ($.definition /.hex) + ($.definition /.hash) + + ($.definition /.cos) + ($.definition /.sin) + ($.definition /.tan) + ($.definition /.acos) + ($.definition /.asin) + ($.definition /.atan) + ($.definition /.exp) + ($.definition /.log) + ($.definition /.ceil) + ($.definition /.floor) + ($.definition /.root_2) + ($.definition /.root_3) + ($.definition /.round) + ($.definition /.factorial) + ($.definition /.hypotenuse) + ($.definition /.sinh) + ($.definition /.csch) + ($.definition /.cosh) + ($.definition /.sech) + ($.definition /.tanh) + ($.definition /.coth) + ($.definition /.asinh) + ($.definition /.acosh) + ($.definition /.atanh) + ($.definition /.acoth) + ($.definition /.asech) + ($.definition /.acsch) + + ($.definition /.= + "Frac(tion) equivalence." + [(= reference sample)]) + + ($.definition /.< + "Frac(tion) less-than." + [(< reference sample)]) + + ($.definition /.<= + "Frac(tion) less-than or equal." + [(<= reference sample)]) + + ($.definition /.> + "Frac(tion) greater-than." + [(> reference sample)]) + + ($.definition /.>= + "Frac(tion) greater-than or equal." + [(>= reference sample)]) + + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] + + [/.+ "Frac(tion) addition."] + [/.- "Frac(tion) substraction."] + [/.* "Frac(tion) multiplication."] + [/./ "Frac(tion) division."] + [/.% "Frac(tion) remainder."] + )) + + ($.definition /./% + "" + [(/% param subject)]) + + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] + + [/.min "Frac(tion) minimum."] + [/.max "Frac(tion) minimum."] + )) + + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] + + [/.not_a_number "Not a number."] + [/.positive_infinity "Positive infinity."] + [/.negative_infinity "Negative infinity."] + )) + + ($.definition /.not_a_number? + "Tests whether a frac is actually not-a-number." + [(not_a_number? it)]) + + ($.definition /.approximately? + "" + [(approximately? margin_of_error standard value)]) + + ($.definition /.mod + "" + [(mod divisor dividend)]) + + ($.definition /.e + "The base of the natural logarithm.") + + ($.definition /.pi + "The ratio of a circle's circumference to its diameter.") + + ($.definition /.tau + "The ratio of a circle's circumference to its radius.") + + ($.definition /.pow + "" + [(pow param subject)]) + + ($.definition /.atan_2 + "" + [(atan_2 x y)]) + + ($.definition /.log_by + "" + [(log_by base it)]) + ))) diff --git a/stdlib/source/documentation/lux/math/number/i16.lux b/stdlib/source/documentation/lux/math/number/i16.lux index 63a53e2f7..29ee5c5c7 100644 --- a/stdlib/source/documentation/lux/math/number/i16.lux +++ b/stdlib/source/documentation/lux/math/number/i16.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,15 +8,16 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.equivalence) - ($.definition /.width) - ($.definition /.i16) - ($.definition /.i64) +(def .public documentation + (List $.Documentation) + (list ($.module /._ + "") - ($.definition /.I16 - "A 16-bit integer.")] - [])) + ($.definition /.equivalence) + ($.definition /.width) + ($.definition /.i16) + ($.definition /.i64) + + ($.definition /.I16 + "A 16-bit integer.") + )) diff --git a/stdlib/source/documentation/lux/math/number/i32.lux b/stdlib/source/documentation/lux/math/number/i32.lux index a0f912eab..7415545e1 100644 --- a/stdlib/source/documentation/lux/math/number/i32.lux +++ b/stdlib/source/documentation/lux/math/number/i32.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,15 +8,16 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.equivalence) - ($.definition /.width) - ($.definition /.i32) - ($.definition /.i64) +(def .public documentation + (List $.Documentation) + (list ($.module /._ + "") - ($.definition /.I32 - "A 32-bit integer.")] - [])) + ($.definition /.equivalence) + ($.definition /.width) + ($.definition /.i32) + ($.definition /.i64) + + ($.definition /.I32 + "A 32-bit integer.") + )) diff --git a/stdlib/source/documentation/lux/math/number/i64.lux b/stdlib/source/documentation/lux/math/number/i64.lux index 2f7909ac2..644c6e7e3 100644 --- a/stdlib/source/documentation/lux/math/number/i64.lux +++ b/stdlib/source/documentation/lux/math/number/i64.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except or and not) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,81 +8,82 @@ [\\library ["[0]" /]]) -(`` (.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.bits_per_byte) - ($.definition /.bytes_per_i64) - ($.definition /.width) - ($.definition /.false) - ($.definition /.true) - ($.definition /.equivalence) - ($.definition /.hash) - ($.definition /.disjunction) - ($.definition /.conjunction) - ($.definition /.reversed) - ($.definition /.left_rotated) - ($.definition /.right_rotated) - - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] - - [/.or "Bitwise or."] - [/.xor "Bitwise xor."] - [/.and "Bitwise and."] - - [/.left_shifted "Bitwise left-shift."] - [/.right_shifted "Unsigned/logic bitwise right-shift."] - )) - - ($.definition /.Mask - "A pattern of bits that can be imposed on I64 values.") - - ($.definition /.bit - "A mask with only a specific bit set." - [(bit position)]) - - ($.definition /.sign - "A mask for the sign bit of ints.") - - ($.definition /.not - "Bitwise negation.") - - ($.definition /.mask - "Mask a block of bits of the specified size." - [(mask amount_of_bits)]) - - ($.definition /.ones - "Count the number of 1s in a bit-map." - [(ones it)]) - - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] - - [/.zero "Clear bit at the given index."] - [/.one "Set bit at given index."] - [/.flipped "Flip bit at given index."] - )) - - ($.definition /.one? - "" - [(one? index input)]) - - ($.definition /.zero? - "" - [(zero? index input)]) - - ($.definition /.region - "A mask for a block of bits of the given size, starting at the given offset." - [(region offset size)]) - - ($.definition (/.Sub width) - "A sub-space of I64 with a reduce amount of bits.") - - ($.definition /.sub - "Given a width in the interval (0,64), yields an implementation for integers of that width." - [(sub width)])] - []))) +(`` (def .public documentation + (List $.Documentation) + (list ($.module /._ + "") + + ($.definition /.bits_per_byte) + ($.definition /.bytes_per_i64) + ($.definition /.width) + ($.definition /.false) + ($.definition /.true) + ($.definition /.equivalence) + ($.definition /.hash) + ($.definition /.disjunction) + ($.definition /.conjunction) + ($.definition /.reversed) + ($.definition /.left_rotated) + ($.definition /.right_rotated) + + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] + + [/.or "Bitwise or."] + [/.xor "Bitwise xor."] + [/.and "Bitwise and."] + + [/.left_shifted "Bitwise left-shift."] + [/.right_shifted "Unsigned/logic bitwise right-shift."] + )) + + ($.definition /.Mask + "A pattern of bits that can be imposed on I64 values.") + + ($.definition /.bit + "A mask with only a specific bit set." + [(bit position)]) + + ($.definition /.sign + "A mask for the sign bit of ints.") + + ($.definition /.not + "Bitwise negation.") + + ($.definition /.mask + "Mask a block of bits of the specified size." + [(mask amount_of_bits)]) + + ($.definition /.ones + "Count the number of 1s in a bit-map." + [(ones it)]) + + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] + + [/.zero "Clear bit at the given index."] + [/.one "Set bit at given index."] + [/.flipped "Flip bit at given index."] + )) + + ($.definition /.one? + "" + [(one? index input)]) + + ($.definition /.zero? + "" + [(zero? index input)]) + + ($.definition /.region + "A mask for a block of bits of the given size, starting at the given offset." + [(region offset size)]) + + ($.definition (/.Sub width) + "A sub-space of I64 with a reduce amount of bits.") + + ($.definition /.sub + "Given a width in the interval (0,64), yields an implementation for integers of that width." + [(sub width)]) + ))) diff --git a/stdlib/source/documentation/lux/math/number/i8.lux b/stdlib/source/documentation/lux/math/number/i8.lux index f2bbc58f6..122c3030d 100644 --- a/stdlib/source/documentation/lux/math/number/i8.lux +++ b/stdlib/source/documentation/lux/math/number/i8.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,15 +8,16 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.equivalence) - ($.definition /.width) - ($.definition /.i8) - ($.definition /.i64) +(def .public documentation + (List $.Documentation) + (list ($.module /._ + "") - ($.definition /.I8 - "A 8-bit integer.")] - [])) + ($.definition /.equivalence) + ($.definition /.width) + ($.definition /.i8) + ($.definition /.i64) + + ($.definition /.I8 + "A 8-bit integer.") + )) diff --git a/stdlib/source/documentation/lux/math/number/int.lux b/stdlib/source/documentation/lux/math/number/int.lux index c70ddafad..f7805842d 100644 --- a/stdlib/source/documentation/lux/math/number/int.lux +++ b/stdlib/source/documentation/lux/math/number/int.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,95 +8,96 @@ [\\library ["[0]" /]]) -(`` (.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.positive?) - ($.definition /.negative?) - ($.definition /.zero?) - ($.definition /.even?) - ($.definition /.odd?) - ($.definition /.co_prime?) - ($.definition /.frac) - ($.definition /.equivalence) - ($.definition /.order) - ($.definition /.enum) - ($.definition /.interval) - ($.definition /.addition) - ($.definition /.multiplication) - ($.definition /.maximum) - ($.definition /.minimum) - ($.definition /.binary) - ($.definition /.octal) - ($.definition /.decimal) - ($.definition /.hex) - ($.definition /.hash) - - ($.definition /.= - "Int(eger) equivalence." - [(= reference sample)]) - - ($.definition /.< - "Int(eger) less-than." - [(< reference sample)]) - - ($.definition /.<= - "Int(eger) less-than or equal." - [(<= reference sample)]) - - ($.definition /.> - "Int(eger) greater-than." - [(> reference sample)]) - - ($.definition /.>= - "Int(eger) greater-than or equal." - [(>= reference sample)]) - - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] - - [/.min "Int(eger) minimum."] - [/.max "Int(eger) maximum."] - )) - - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] - - [/.+ "Int(eger) addition."] - [/.- "Int(eger) substraction."] - [/.* "Int(eger) multiplication."] - [/./ "Int(eger) division."] - [/.% "Int(eger) remainder."] - [/./% "Int(eger) [division remainder]."] - )) - - ($.definition /.opposite - "A value of equal magnitude and opposite sign.") - - ($.definition /.abs - "A value of equal magnitude and positive sign.") - - ($.definition /.signum - "A value (either -1, 0 or +0) which represents the sign.") - - ($.definition /.mod - (format "Integer modulo." - \n "Note: The modulo and the remainder are not the same.") - [(mod divisor dividend)]) - - ($.definition /.gcd - "Greatest Common Divisor.") - - ($.definition /.extended_gcd - "Extended euclidean algorithm.") - - ($.definition /.lcm - "Least Common Multiple.") - - ($.definition /.right_shifted - "Signed/arithmetic bitwise right-shift." - [(right_shifted parameter subject)])] - []))) +(`` (def .public documentation + (List $.Documentation) + (list ($.module /._ + "") + + ($.definition /.positive?) + ($.definition /.negative?) + ($.definition /.zero?) + ($.definition /.even?) + ($.definition /.odd?) + ($.definition /.co_prime?) + ($.definition /.frac) + ($.definition /.equivalence) + ($.definition /.order) + ($.definition /.enum) + ($.definition /.interval) + ($.definition /.addition) + ($.definition /.multiplication) + ($.definition /.maximum) + ($.definition /.minimum) + ($.definition /.binary) + ($.definition /.octal) + ($.definition /.decimal) + ($.definition /.hex) + ($.definition /.hash) + + ($.definition /.= + "Int(eger) equivalence." + [(= reference sample)]) + + ($.definition /.< + "Int(eger) less-than." + [(< reference sample)]) + + ($.definition /.<= + "Int(eger) less-than or equal." + [(<= reference sample)]) + + ($.definition /.> + "Int(eger) greater-than." + [(> reference sample)]) + + ($.definition /.>= + "Int(eger) greater-than or equal." + [(>= reference sample)]) + + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] + + [/.min "Int(eger) minimum."] + [/.max "Int(eger) maximum."] + )) + + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] + + [/.+ "Int(eger) addition."] + [/.- "Int(eger) substraction."] + [/.* "Int(eger) multiplication."] + [/./ "Int(eger) division."] + [/.% "Int(eger) remainder."] + [/./% "Int(eger) [division remainder]."] + )) + + ($.definition /.opposite + "A value of equal magnitude and opposite sign.") + + ($.definition /.abs + "A value of equal magnitude and positive sign.") + + ($.definition /.signum + "A value (either -1, 0 or +0) which represents the sign.") + + ($.definition /.mod + (format "Integer modulo." + \n "Note: The modulo and the remainder are not the same.") + [(mod divisor dividend)]) + + ($.definition /.gcd + "Greatest Common Divisor.") + + ($.definition /.extended_gcd + "Extended euclidean algorithm.") + + ($.definition /.lcm + "Least Common Multiple.") + + ($.definition /.right_shifted + "Signed/arithmetic bitwise right-shift." + [(right_shifted parameter subject)]) + ))) diff --git a/stdlib/source/documentation/lux/math/number/nat.lux b/stdlib/source/documentation/lux/math/number/nat.lux index 72e7773c3..677393fdd 100644 --- a/stdlib/source/documentation/lux/math/number/nat.lux +++ b/stdlib/source/documentation/lux/math/number/nat.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,56 +8,57 @@ [\\library ["[0]" /]]) -(`` (.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /.co_prime?) - ($.definition /.even?) - ($.definition /.odd?) - ($.definition /.frac) - ($.definition /.equivalence) - ($.definition /.order) - ($.definition /.enum) - ($.definition /.interval) - ($.definition /.addition) - ($.definition /.multiplication) - ($.definition /.minimum) - ($.definition /.maximum) - ($.definition /.binary) - ($.definition /.octal) - ($.definition /.hex) - ($.definition /.decimal) - ($.definition /.hash) - - (,, (with_template [<name> <documentation>] - [($.definition <name> - <documentation>)] - - [/.= "Nat(ural) equivalence."] - [/.+ "Nat(ural) addition."] - [/.- "Nat(ural) substraction."] - [/.< "Nat(ural) less-than."] - [/.<= "Nat(ural) less-than or equal."] - [/.> "Nat(ural) greater-than."] - [/.>= "Nat(ural) greater-than or equal."] - [/.* "Nat(ural) multiplication."] - [/./ "Nat(ural) division."] - [/./% "Nat(ural) [division remainder]."] - [/.% "Nat(ural) remainder."] - )) - - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] - - [/.min "Nat(ural) minimum."] - [/.max "Nat(ural) maximum."] - )) - - ($.definition /.gcd - "Greatest Common Divisor.") - - ($.definition /.lcm - "Least Common Multiple.")] - []))) +(`` (def .public documentation + (List $.Documentation) + (list ($.module /._ + "") + + ($.definition /.co_prime?) + ($.definition /.even?) + ($.definition /.odd?) + ($.definition /.frac) + ($.definition /.equivalence) + ($.definition /.order) + ($.definition /.enum) + ($.definition /.interval) + ($.definition /.addition) + ($.definition /.multiplication) + ($.definition /.minimum) + ($.definition /.maximum) + ($.definition /.binary) + ($.definition /.octal) + ($.definition /.hex) + ($.definition /.decimal) + ($.definition /.hash) + + (,, (with_template [<name> <documentation>] + [($.definition <name> + <documentation>)] + + [/.= "Nat(ural) equivalence."] + [/.+ "Nat(ural) addition."] + [/.- "Nat(ural) substraction."] + [/.< "Nat(ural) less-than."] + [/.<= "Nat(ural) less-than or equal."] + [/.> "Nat(ural) greater-than."] + [/.>= "Nat(ural) greater-than or equal."] + [/.* "Nat(ural) multiplication."] + [/./ "Nat(ural) division."] + [/./% "Nat(ural) [division remainder]."] + [/.% "Nat(ural) remainder."] + )) + + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] + + [/.min "Nat(ural) minimum."] + [/.max "Nat(ural) maximum."] + )) + + ($.definition /.gcd + "Greatest Common Divisor.") + + ($.definition /.lcm + "Least Common Multiple.") + ))) diff --git a/stdlib/source/documentation/lux/math/number/ratio.lux b/stdlib/source/documentation/lux/math/number/ratio.lux index 4857d55fe..e74805a90 100644 --- a/stdlib/source/documentation/lux/math/number/ratio.lux +++ b/stdlib/source/documentation/lux/math/number/ratio.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,34 +8,35 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "Rational numbers." - [($.definition /.nat) - ($.definition /.=) - ($.definition /.equivalence) - ($.definition /.<) - ($.definition /.<=) - ($.definition /.>) - ($.definition /.>=) - ($.definition /.order) - ($.definition /.+) - ($.definition /.-) - ($.definition /.*) - ($.definition /./) - ($.definition /.%) - ($.definition /.reciprocal) - ($.definition /.codec) - ($.definition /.addition) - ($.definition /.multiplication) +(def .public documentation + (List $.Documentation) + (list ($.module /._ + "Rational numbers.") - ($.definition /.Ratio - "An unsigned ratio of numbers.") + ($.definition /.nat) + ($.definition /.=) + ($.definition /.equivalence) + ($.definition /.<) + ($.definition /.<=) + ($.definition /.>) + ($.definition /.>=) + ($.definition /.order) + ($.definition /.+) + ($.definition /.-) + ($.definition /.*) + ($.definition /./) + ($.definition /.%) + ($.definition /.reciprocal) + ($.definition /.codec) + ($.definition /.addition) + ($.definition /.multiplication) - ($.definition /.ratio - "Rational literals." - [(ratio numerator denominator)] - ["The denominator can be omitted if it is 1." - (ratio numerator)])] - [])) + ($.definition /.Ratio + "An unsigned ratio of numbers.") + + ($.definition /.ratio + "Rational literals." + [(ratio numerator denominator)] + ["The denominator can be omitted if it is 1." + (ratio numerator)]) + )) diff --git a/stdlib/source/documentation/lux/math/number/rev.lux b/stdlib/source/documentation/lux/math/number/rev.lux index 0b629eb7d..323ccc467 100644 --- a/stdlib/source/documentation/lux/math/number/rev.lux +++ b/stdlib/source/documentation/lux/math/number/rev.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except private) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,87 +8,88 @@ [\\library ["[0]" /]]) -(`` (.def .public documentation - (.List $.Module) - ($.module /._ - "" - [($.definition /./1) - ($.definition /./2) - ($.definition /./4) - ($.definition /./8) - ($.definition /./16) - ($.definition /./32) - ($.definition /./64) - ($.definition /./128) - ($.definition /./256) - ($.definition /./512) - ($.definition /./1024) - ($.definition /./2048) - ($.definition /./4096) - ($.definition /./%) - ($.definition /.frac) - ($.definition /.equivalence) - ($.definition /.hash) - ($.definition /.order) - ($.definition /.enum) - ($.definition /.interval) - ($.definition /.addition) - ($.definition /.maximum) - ($.definition /.minimum) - ($.definition /.binary) - ($.definition /.octal) - ($.definition /.hex) - ($.definition /.decimal) +(`` (def .public documentation + (List $.Documentation) + (list ($.module /._ + "") - ($.definition /.= - "Rev(olution) equivalence." - [(= reference sample)]) + ($.definition /./1) + ($.definition /./2) + ($.definition /./4) + ($.definition /./8) + ($.definition /./16) + ($.definition /./32) + ($.definition /./64) + ($.definition /./128) + ($.definition /./256) + ($.definition /./512) + ($.definition /./1024) + ($.definition /./2048) + ($.definition /./4096) + ($.definition /./%) + ($.definition /.frac) + ($.definition /.equivalence) + ($.definition /.hash) + ($.definition /.order) + ($.definition /.enum) + ($.definition /.interval) + ($.definition /.addition) + ($.definition /.maximum) + ($.definition /.minimum) + ($.definition /.binary) + ($.definition /.octal) + ($.definition /.hex) + ($.definition /.decimal) - ($.definition /.< - "Rev(olution) less-than." - [(< reference sample)]) + ($.definition /.= + "Rev(olution) equivalence." + [(= reference sample)]) - ($.definition /.<= - "Rev(olution) less-than or equal." - [(<= reference sample)]) + ($.definition /.< + "Rev(olution) less-than." + [(< reference sample)]) - ($.definition /.> - "Rev(olution) greater-than." - [(> reference sample)]) + ($.definition /.<= + "Rev(olution) less-than or equal." + [(<= reference sample)]) - ($.definition /.>= - "Rev(olution) greater-than or equal." - [(>= reference sample)]) + ($.definition /.> + "Rev(olution) greater-than." + [(> reference sample)]) - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] + ($.definition /.>= + "Rev(olution) greater-than or equal." + [(>= reference sample)]) - [/.min "Rev(olution) minimum."] - [/.max "Rev(olution) maximum."] - )) + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] - (,, (with_template [<name> <doc>] - [($.definition <name> - <doc>)] + [/.min "Rev(olution) minimum."] + [/.max "Rev(olution) maximum."] + )) - [/.+ "Rev(olution) addition."] - [/.- "Rev(olution) substraction."] - [/.* "Rev(olution) multiplication."] - [/./ "Rev(olution) division."] - [/.% "Rev(olution) remainder."] - [/.ratio "Ratio between two rev(olution)s."] - )) + (,, (with_template [<name> <doc>] + [($.definition <name> + <doc>)] - ($.definition /.up - "" - [(up scale subject)]) + [/.+ "Rev(olution) addition."] + [/.- "Rev(olution) substraction."] + [/.* "Rev(olution) multiplication."] + [/./ "Rev(olution) division."] + [/.% "Rev(olution) remainder."] + [/.ratio "Ratio between two rev(olution)s."] + )) - ($.definition /.down - "" - [(down scale subject)]) + ($.definition /.up + "" + [(up scale subject)]) - ($.definition /.reciprocal - "Rev(olution) reciprocal of a Nat(ural)." - [(reciprocal numerator)])] - []))) + ($.definition /.down + "" + [(down scale subject)]) + + ($.definition /.reciprocal + "Rev(olution) reciprocal of a Nat(ural)." + [(reciprocal numerator)]) + ))) diff --git a/stdlib/source/documentation/lux/math/random.lux b/stdlib/source/documentation/lux/math/random.lux index 1ff5a15a2..d9c6ef729 100644 --- a/stdlib/source/documentation/lux/math/random.lux +++ b/stdlib/source/documentation/lux/math/random.lux @@ -1,6 +1,6 @@ (.require [library - [lux (.except or and nat int rev) + [lux (.except) ["$" documentation] [data ["[0]" text (.only \n) @@ -8,112 +8,113 @@ [\\library ["[0]" /]]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "Pseudo-random number generation (PRNG) algorithms." - [($.definition /.functor) - ($.definition /.apply) - ($.definition /.monad) - - ($.definition /.bit) - ($.definition /.i64) - ($.definition /.nat) - ($.definition /.int) - ($.definition /.rev) - ($.definition /.frac) - ($.definition /.char) - - ($.definition /.unicode) - ($.definition /.ascii) - ($.definition /.alphabetic) - ($.definition /.alpha_numeric) - ($.definition /.numeric) - ($.definition /.upper_case) - ($.definition /.lower_case) - - ($.definition /.ratio) - ($.definition /.complex) - - ($.definition /.maybe) - ($.definition /.list) - ($.definition /.sequence) - ($.definition /.array) - ($.definition /.queue) - ($.definition /.stack) - - ($.definition /.instant) - ($.definition /.date) - ($.definition /.time) - ($.definition /.duration) - ($.definition /.month) - ($.definition /.day) - - ($.definition /.PRNG - "An abstract way to represent any PRNG.") - - ($.definition (/.Random it) - "A producer of random values based on a PRNG.") - - ($.definition /.only - "Retries the generator until the output satisfies a predicate." - [(only pred gen)]) - - ($.definition /.one - "" - [(one check random)]) - - ($.definition /.refined - "Retries the generator until the output can be refined." - [(refined refiner gen)]) - - ($.definition /.safe_frac - "A number in the interval [0.0,1.0].") - - ($.definition /.text - "" - [(text char_gen size)]) - - ($.definition /.and - "Sequencing combinator." - [(and left right)]) - - ($.definition /.or - "Heterogeneous alternative combinator." - [(or left right)]) - - ($.definition /.either - "Homogeneous alternative combinator." - [(either left right)]) - - ($.definition /.rec - "A combinator for producing recursive random generators." - [(rec gen)]) - - ($.definition /.set - "" - [(set hash size value_gen)]) - - ($.definition /.dictionary - "" - [(dictionary hash size key_gen value_gen)]) - - ($.definition /.result - "" - [(result prng calc)]) - - ($.definition /.prng - "" - [(prng update return)]) - - ($.definition /.pcg_32 - (format "An implementation of the PCG32 algorithm." - \n "For more information, please see: http://www.pcg-random.org/")) - - ($.definition /.xoroshiro_128+ - (format "An implementation of the Xoroshiro128+ algorithm." - \n "For more information, please see: http://xoroshiro.di.unimi.it/")) - - ($.definition /.split_mix_64 - "An implementation of the SplitMix64 algorithm.")] - [])) +(def .public documentation + (List $.Documentation) + (list ($.module /._ + "Pseudo-random number generation (PRNG) algorithms.") + + ($.definition /.functor) + ($.definition /.apply) + ($.definition /.monad) + + ($.definition /.bit) + ($.definition /.i64) + ($.definition /.nat) + ($.definition /.int) + ($.definition /.rev) + ($.definition /.frac) + ($.definition /.char) + + ($.definition /.unicode) + ($.definition /.ascii) + ($.definition /.alphabetic) + ($.definition /.alpha_numeric) + ($.definition /.numeric) + ($.definition /.upper_case) + ($.definition /.lower_case) + + ($.definition /.ratio) + ($.definition /.complex) + + ($.definition /.maybe) + ($.definition /.list) + ($.definition /.sequence) + ($.definition /.array) + ($.definition /.queue) + ($.definition /.stack) + + ($.definition /.instant) + ($.definition /.date) + ($.definition /.time) + ($.definition /.duration) + ($.definition /.month) + ($.definition /.day) + + ($.definition /.PRNG + "An abstract way to represent any PRNG.") + + ($.definition (/.Random it) + "A producer of random values based on a PRNG.") + + ($.definition /.only + "Retries the generator until the output satisfies a predicate." + [(only pred gen)]) + + ($.definition /.one + "" + [(one check random)]) + + ($.definition /.refined + "Retries the generator until the output can be refined." + [(refined refiner gen)]) + + ($.definition /.safe_frac + "A number in the interval [0.0,1.0].") + + ($.definition /.text + "" + [(text char_gen size)]) + + ($.definition /.and + "Sequencing combinator." + [(and left right)]) + + ($.definition /.or + "Heterogeneous alternative combinator." + [(or left right)]) + + ($.definition /.either + "Homogeneous alternative combinator." + [(either left right)]) + + ($.definition /.rec + "A combinator for producing recursive random generators." + [(rec gen)]) + + ($.definition /.set + "" + [(set hash size value_gen)]) + + ($.definition /.dictionary + "" + [(dictionary hash size key_gen value_gen)]) + + ($.definition /.result + "" + [(result prng calc)]) + + ($.definition /.prng + "" + [(prng update return)]) + + ($.definition /.pcg_32 + (format "An implementation of the PCG32 algorithm." + \n "For more information, please see: http://www.pcg-random.org/")) + + ($.definition /.xoroshiro_128+ + (format "An implementation of the Xoroshiro128+ algorithm." + \n "For more information, please see: http://xoroshiro.di.unimi.it/")) + + ($.definition /.split_mix_64 + "An implementation of the SplitMix64 algorithm.") + )) |