diff options
Diffstat (limited to '')
18 files changed, 681 insertions, 846 deletions
diff --git a/stdlib/source/documentation/lux/data/collection.lux b/stdlib/source/documentation/lux/data/collection.lux index b4ae1f294..5712aa398 100644 --- a/stdlib/source/documentation/lux/data/collection.lux +++ b/stdlib/source/documentation/lux/data/collection.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except) - ["$" documentation (.only documentation:)] + ["$" documentation] [data [text (.only \n) ["%" \\format (.only format)]] diff --git a/stdlib/source/documentation/lux/data/collection/array.lux b/stdlib/source/documentation/lux/data/collection/array.lux index 8697a4686..b6bc74a63 100644 --- a/stdlib/source/documentation/lux/data/collection/array.lux +++ b/stdlib/source/documentation/lux/data/collection/array.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -11,107 +11,89 @@ [\\library ["[0]" /]]) -(documentation: (/.Array it) - "Mutable arrays.") +(.def .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.type_name) + ($.default /.equivalence) + ($.default /.monoid) + ($.default /.functor) + ($.default /.mix) + ($.default /.every?) + ($.default /.any?) -(documentation: /.empty - "An empty array of the specified size." - [(empty size)]) + ($.documentation (/.Array it) + "Mutable arrays.") -(documentation: /.size - "" - [(size array)]) + ($.documentation /.empty + "An empty array of the specified size." + [(empty size)]) -(documentation: /.item - "" - [(item index array)]) + ($.documentation /.size + "" + [(size array)]) -(documentation: /.has! - "Mutate the array by writing a value to the specified index." - [(has! index value array)]) + ($.documentation /.item + "" + [(item index array)]) -(documentation: /.lacks! - "Mutate the array by deleting the value at the specified index." - [(lacks! index array)]) + ($.documentation /.has! + "Mutate the array by writing a value to the specified index." + [(has! index value array)]) -(documentation: /.has? - "" - [(has? index array)]) + ($.documentation /.lacks! + "Mutate the array by deleting the value at the specified index." + [(lacks! index array)]) -(documentation: /.revised! - "Mutate the array by updating the value at the specified index." - [(revised! index transform array)]) + ($.documentation /.has? + "" + [(has? index array)]) -(documentation: /.upsert! - (format "Mutate the array by updating the value at the specified index." - \n "If there is no value, update and write the default value given.") - [(upsert! index default transform array)]) + ($.documentation /.revised! + "Mutate the array by updating the value at the specified index." + [(revised! index transform array)]) -(documentation: /.copy! - "Writes the contents of one array into the other." - [(copy! length src_start src_array dest_start dest_array)]) + ($.documentation /.upsert! + (format "Mutate the array by updating the value at the specified index." + \n "If there is no value, update and write the default value given.") + [(upsert! index default transform array)]) -(documentation: /.occupancy - "Finds out how many cells in an array are occupied." - [(occupancy array)]) + ($.documentation /.copy! + "Writes the contents of one array into the other." + [(copy! length src_start src_array dest_start dest_array)]) -(documentation: /.vacancy - "Finds out how many cells in an array are vacant." - [(vacancy array)]) + ($.documentation /.occupancy + "Finds out how many cells in an array are occupied." + [(occupancy array)]) -(documentation: /.only! - "Delete every item of the array that fails to satisfy the predicate." - [(only! p xs)]) + ($.documentation /.vacancy + "Finds out how many cells in an array are vacant." + [(vacancy array)]) -(documentation: /.example - "Yields the first item in the array that satisfies the predicate." - [(example p xs)]) + ($.documentation /.only! + "Delete every item of the array that fails to satisfy the predicate." + [(only! p xs)]) -(documentation: /.example' - "Just like 'example', but with access to the index of each value." - [(example' p xs)]) + ($.documentation /.example + "Yields the first item in the array that satisfies the predicate." + [(example p xs)]) -(documentation: /.clone - "Yields a shallow clone of the array." - [(clone xs)]) + ($.documentation /.example' + "Just like 'example', but with access to the index of each value." + [(example' p xs)]) -(documentation: /.of_list - "" - [(of_list xs)]) + ($.documentation /.clone + "Yields a shallow clone of the array." + [(clone xs)]) -(documentation: /.list - (format "Yields a list with every non-empty item in the array." - \n "Can use the optional default value when encountering an empty cell in the array.") - [(list {.#None} array) - (list {.#Some default} array)]) + ($.documentation /.of_list + "" + [(of_list xs)]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [..Array - ..empty - ..size - ..item - ..has! - ..lacks! - ..has? - ..revised! - ..upsert! - ..copy! - ..occupancy - ..vacancy - ..only! - ..example - ..example' - ..clone - ..of_list - ..list - ($.default /.type_name) - ($.default /.equivalence) - ($.default /.monoid) - ($.default /.functor) - ($.default /.mix) - ($.default /.every?) - ($.default /.any?)] + ($.documentation /.list + (format "Yields a list with every non-empty item in the array." + \n "Can use the optional default value when encountering an empty cell in the array.") + [(list {.#None} array) + (list {.#Some default} array)])] [])) diff --git a/stdlib/source/documentation/lux/data/collection/bits.lux b/stdlib/source/documentation/lux/data/collection/bits.lux index 075c71091..55d0354b0 100644 --- a/stdlib/source/documentation/lux/data/collection/bits.lux +++ b/stdlib/source/documentation/lux/data/collection/bits.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except or and not) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -11,42 +11,11 @@ [\\library ["[0]" /]]) -(documentation: /.Bits - "A bit-map.") - -(documentation: /.size - "Measures the size of a bit-map by counting all the 1s in the bit-map." - [(size bits)]) - -(documentation: /.capacity - "" - [(capacity bits)]) - -(documentation: /.bit - "" - [(bit index bits)]) - -(documentation: /.intersects? - "" - [(intersects? reference sample)]) - -(documentation: /.not - "" - [(not input)]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..Bits - ..size - ..capacity - ..bit - - ..intersects? - ..not - - ($.default /.Chunk) + [($.default /.Chunk) ($.default /.chunk_size) ($.default /.empty) ($.default /.empty?) @@ -56,5 +25,28 @@ ($.default /.flipped) ($.default /.and) ($.default /.or) - ($.default /.xor)] + ($.default /.xor) + + ($.documentation /.Bits + "A bit-map.") + + ($.documentation /.size + "Measures the size of a bit-map by counting all the 1s in the bit-map." + [(size bits)]) + + ($.documentation /.capacity + "" + [(capacity bits)]) + + ($.documentation /.bit + "" + [(bit index bits)]) + + ($.documentation /.intersects? + "" + [(intersects? reference sample)]) + + ($.documentation /.not + "" + [(not input)])] [])) diff --git a/stdlib/source/documentation/lux/data/collection/dictionary.lux b/stdlib/source/documentation/lux/data/collection/dictionary.lux index 72ed210aa..114050284 100644 --- a/stdlib/source/documentation/lux/data/collection/dictionary.lux +++ b/stdlib/source/documentation/lux/data/collection/dictionary.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except has revised) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -14,90 +14,76 @@ ["[1][0]" ordered] ["[1][0]" plist]]) -(documentation: (/.Dictionary key value) - "A dictionary implemented as a Hash-Array Mapped Trie (HAMT).") +(.def .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.key_hash) + ($.default /.key_already_exists) + ($.default /.size) + ($.default /.empty?) + ($.default /.entries) + ($.default /.keys) + ($.default /.values) + ($.default /.equivalence) + ($.default /.functor) -(documentation: /.empty - "An empty dictionary." - [(empty key_hash)]) + ($.documentation (/.Dictionary key value) + "A dictionary implemented as a Hash-Array Mapped Trie (HAMT).") -(documentation: /.has - "" - [(has key val dict)]) + ($.documentation /.empty + "An empty dictionary." + [(empty key_hash)]) -(documentation: /.lacks - "" - [(lacks key dict)]) + ($.documentation /.has + "" + [(has key val dict)]) -(documentation: /.value - "" - [(value key dict)]) + ($.documentation /.lacks + "" + [(lacks key dict)]) -(documentation: /.key? - "" - [(key? dict key)]) + ($.documentation /.value + "" + [(value key dict)]) -(documentation: /.has' - "Only puts the KV-pair if the key is not already present." - [(has' key val dict)]) + ($.documentation /.key? + "" + [(key? dict key)]) -(documentation: /.revised - "Transforms the value located at key (if available), using the given function." - [(revised key f dict)]) + ($.documentation /.has' + "Only puts the KV-pair if the key is not already present." + [(has' key val dict)]) -(documentation: /.revised' - (format "Updates the value at the key; if it exists." - \n "Otherwise, puts a value by applying the function to a default.") - [(revised' key default f dict)]) + ($.documentation /.revised + "Transforms the value located at key (if available), using the given function." + [(revised key f dict)]) -(documentation: /.of_list - "" - [(of_list key_hash kvs)]) + ($.documentation /.revised' + (format "Updates the value at the key; if it exists." + \n "Otherwise, puts a value by applying the function to a default.") + [(revised' key default f dict)]) -(documentation: /.composite - (format "Merges 2 dictionaries." - \n "If any collisions with keys occur, the values of dict2 will overwrite those of dict1.") - [(composite dict2 dict1)]) + ($.documentation /.of_list + "" + [(of_list key_hash kvs)]) -(documentation: /.composite_with - (format "Merges 2 dictionaries." - \n "If any collisions with keys occur, a new value will be computed by applying 'f' to the values of dict2 and dict1.") - [(composite_with f dict2 dict1)]) + ($.documentation /.composite + (format "Merges 2 dictionaries." + \n "If any collisions with keys occur, the values of dict2 will overwrite those of dict1.") + [(composite dict2 dict1)]) -(documentation: /.re_bound - "If there is a value under 'from_key', remove 'from_key' and store the value under 'to_key'." - [(re_bound from_key to_key dict)]) + ($.documentation /.composite_with + (format "Merges 2 dictionaries." + \n "If any collisions with keys occur, a new value will be computed by applying 'f' to the values of dict2 and dict1.") + [(composite_with f dict2 dict1)]) -(documentation: /.sub - "A sub-dictionary, with only the specified keys." - [(sub keys dict)]) + ($.documentation /.re_bound + "If there is a value under 'from_key', remove 'from_key' and store the value under 'to_key'." + [(re_bound from_key to_key dict)]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [..Dictionary - ..empty - ..has - ..lacks - ..value - ..key? - ..has' - ..revised - ..revised' - ..of_list - ..composite - ..composite_with - ..re_bound - ..sub - ($.default /.key_hash) - ($.default /.key_already_exists) - ($.default /.size) - ($.default /.empty?) - ($.default /.entries) - ($.default /.keys) - ($.default /.values) - ($.default /.equivalence) - ($.default /.functor)] + ($.documentation /.sub + "A sub-dictionary, with only the specified keys." + [(sub keys dict)])] [/ordered.documentation /plist.documentation])) diff --git a/stdlib/source/documentation/lux/data/collection/dictionary/ordered.lux b/stdlib/source/documentation/lux/data/collection/dictionary/ordered.lux index d5f857c5c..a946434d6 100644 --- a/stdlib/source/documentation/lux/data/collection/dictionary/ordered.lux +++ b/stdlib/source/documentation/lux/data/collection/dictionary/ordered.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except has revised) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -11,69 +11,56 @@ [\\library ["[0]" /]]) -(documentation: (/.Dictionary key value) - "A dictionary data-structure with ordered entries.") +(`` (.def .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.empty?) + ($.default /.entries) + ($.default /.keys) + ($.default /.values) + ($.default /.equivalence) -(documentation: /.empty - "An empty dictionary, employing the given order." - [(empty order)]) + ($.documentation (/.Dictionary key value) + "A dictionary data-structure with ordered entries.") -(documentation: /.value - "" - [(value key dict)]) + ($.documentation /.empty + "An empty dictionary, employing the given order." + [(empty order)]) -(documentation: /.key? - "" - [(key? dict key)]) + ($.documentation /.value + "" + [(value key dict)]) -(with_template [<name>] - [(`` (documentation: <name> - (format "Yields value under the " (~~ (template.text [<name>])) "imum key.")))] + ($.documentation /.key? + "" + [(key? dict key)]) - [/.min] - [/.max] - ) + (~~ (with_template [<name>] + [(`` ($.documentation <name> + (format "Yields value under the " (~~ (template.text [<name>])) "imum key.")))] -(documentation: /.size - "" - [(size dict)]) + [/.min] + [/.max] + )) -(documentation: /.has - "" - [(has key value dict)]) + ($.documentation /.size + "" + [(size dict)]) -(documentation: /.lacks - "" - [(lacks key dict)]) + ($.documentation /.has + "" + [(has key value dict)]) -(documentation: /.revised - "" - [(revised key transform dict)]) + ($.documentation /.lacks + "" + [(lacks key dict)]) -(documentation: /.of_list - "" - [(of_list order list)]) + ($.documentation /.revised + "" + [(revised key transform dict)]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [..Dictionary - ..empty - ..value - ..key? - - ..min - ..max - - ..size - ..has - ..lacks - ..revised - ..of_list - ($.default /.empty?) - ($.default /.entries) - ($.default /.keys) - ($.default /.values) - ($.default /.equivalence)] - [])) + ($.documentation /.of_list + "" + [(of_list order list)])] + []))) diff --git a/stdlib/source/documentation/lux/data/collection/dictionary/plist.lux b/stdlib/source/documentation/lux/data/collection/dictionary/plist.lux index 0dafc6340..2e478812e 100644 --- a/stdlib/source/documentation/lux/data/collection/dictionary/plist.lux +++ b/stdlib/source/documentation/lux/data/collection/dictionary/plist.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except has revised) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -11,44 +11,38 @@ [\\library ["[0]" /]]) -(documentation: (/.PList it) - (format "A property list." - \n "It's a simple dictionary-like structure with Text keys.")) - -(documentation: /.value - "" - [(value key properties)]) - -(documentation: /.contains? - "" - [(contains? key properties)]) - -(documentation: /.has - "" - [(has key val properties)]) - -(documentation: /.revised - "" - [(revised key f properties)]) - -(documentation: /.lacks - "" - [(lacks key properties)]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..PList - ..value - ..contains? - ..has - ..revised - ..lacks - ($.default /.empty) + [($.default /.empty) ($.default /.size) ($.default /.empty?) ($.default /.keys) ($.default /.values) - ($.default /.equivalence)] + ($.default /.equivalence) + + ($.documentation (/.PList it) + (format "A property list." + \n "It's a simple dictionary-like structure with Text keys.")) + + ($.documentation /.value + "" + [(value key properties)]) + + ($.documentation /.contains? + "" + [(contains? key properties)]) + + ($.documentation /.has + "" + [(has key val properties)]) + + ($.documentation /.revised + "" + [(revised key f properties)]) + + ($.documentation /.lacks + "" + [(lacks key properties)])] [])) diff --git a/stdlib/source/documentation/lux/data/collection/list.lux b/stdlib/source/documentation/lux/data/collection/list.lux index 8d8a47651..e0699154e 100644 --- a/stdlib/source/documentation/lux/data/collection/list.lux +++ b/stdlib/source/documentation/lux/data/collection/list.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except all) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -11,193 +11,158 @@ [\\library ["[0]" /]]) -(documentation: /.mixes - "" - [(mixes f init inputs)]) - -(documentation: /.reversed - "" - [(reversed xs)]) - -(documentation: /.only - "A list with only values that satisfy the predicate." - [(only keep? xs)]) - -(documentation: /.partition - "Divide the list into all elements that satisfy a predicate, and all elements that do not." - [(partition satisfies? list)]) - -(documentation: /.pairs - "Cut the list into pairs of 2." - [(pairs list)]) - -(documentation: /.split_at - "" - [(split_at n xs)]) - -(documentation: /.split_when - "Segment the list by using a predicate to tell when to cut." - [(split_when predicate xs)]) - -(documentation: /.sub - "Segment the list into sub-lists of (at most) the given size." - [(sub size list)]) - -(documentation: /.repeated - "A list of the value x, repeated n times." - [(repeated n x)]) - -(documentation: /.iterations - "Generates a list element by element until the function returns .#None." - [(iterations f x)]) - -(documentation: /.one - "" - [(one check xs)]) - -(documentation: /.all - "" - [(all check xs)]) - -(documentation: /.example - "Yields the first value in the list that satisfies the predicate." - [(example predicate xs)]) - -(documentation: /.interposed - "Puts a value between every two elements in the list." - [(interposed sep xs)]) - -(documentation: /.size - "" - [(size list)]) - -(documentation: /.item - "Fetches the element at the specified index." - [(item i xs)]) - -(documentation: /.sorted - "A list ordered by a comparison function." - [(sorted < xs)]) - -(documentation: /.empty? - "" - [(empty? xs)]) - -(documentation: /.member? - "" - [(member? eq xs x)]) - -(with_template [<name> <doc>] - [(documentation: <name> - <doc>)] - - [/.head "Yields the first element of a list."] - [/.tail "For a list of size N, yields the N-1 elements after the first one."] - ) - -(documentation: /.indices - "Produces all the valid indices for a given size." - [(indices size)]) - -(documentation: /.zipped - "Create list zippers with the specified number of input lists." - [(def zipped_2 (zipped 2)) - (def zipped_3 (zipped 3)) - (zipped_3 xs ys zs) - ((zipped 3) xs ys zs)]) - -(documentation: /.zipped_with - "Create list zippers with the specified number of input lists." - [(def zipped_with_2 (zipped_with 2)) - (def zipped_with_3 (zipped_with 3)) - (zipped_with_2 + xs ys) - ((zipped_with 2) + xs ys)]) - -(documentation: /.last - "" - [(last xs)]) - -(documentation: /.inits - (format "For a list of size N, yields the first N-1 elements." - \n "Will yield a .#None for empty lists.") - [(inits xs)]) - -(documentation: /.together - "The sequential combination of all the lists.") - -(documentation: /.with - "Enhances a monad with List functionality." - [(with monad)]) - -(documentation: /.lifted - "Wraps a monadic value with List machinery." - [(lifted monad)]) - -(documentation: /.enumeration - "Pairs every element in the list with its index, starting at 0." - [(enumeration xs)]) - -(documentation: /.when - "Can be used as a guard in (co)monadic be/do expressions." - [(do monad - [value (do_something 1 2 3) - .when (passes_test? value)] - (do_something_else 4 5 6))]) - -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [..mixes - ..reversed - ..only - ..partition - ..pairs - - ..split_at - ..split_when - ..sub - ..repeated - ..iterations - ..one - ..all - ..example - ..interposed - ..size - - ..item - ..sorted - ..empty? - ..member? - - ..head - ..tail - - ..indices - ..zipped - ..zipped_with - ..last - ..inits - ..together - ..with - ..lifted - ..enumeration - ..when - ($.default /.mix) - ($.default /.equivalence) - ($.default /.hash) - ($.default /.monoid) - ($.default /.functor) - ($.default /.apply) - ($.default /.monad) - ($.default /.zipped_2) - ($.default /.zipped_3) - ($.default /.zipped_with_2) - ($.default /.zipped_with_3) - ($.default /.first) - ($.default /.after) - ($.default /.while) - ($.default /.until) - ($.default /.every?) - ($.default /.any?)] - [])) +(`` (.def .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.mix) + ($.default /.equivalence) + ($.default /.hash) + ($.default /.monoid) + ($.default /.functor) + ($.default /.apply) + ($.default /.monad) + ($.default /.zipped_2) + ($.default /.zipped_3) + ($.default /.zipped_with_2) + ($.default /.zipped_with_3) + ($.default /.first) + ($.default /.after) + ($.default /.while) + ($.default /.until) + ($.default /.every?) + ($.default /.any?) + + ($.documentation /.mixes + "" + [(mixes f init inputs)]) + + ($.documentation /.reversed + "" + [(reversed xs)]) + + ($.documentation /.only + "A list with only values that satisfy the predicate." + [(only keep? xs)]) + + ($.documentation /.partition + "Divide the list into all elements that satisfy a predicate, and all elements that do not." + [(partition satisfies? list)]) + + ($.documentation /.pairs + "Cut the list into pairs of 2." + [(pairs list)]) + + ($.documentation /.split_at + "" + [(split_at n xs)]) + + ($.documentation /.split_when + "Segment the list by using a predicate to tell when to cut." + [(split_when predicate xs)]) + + ($.documentation /.sub + "Segment the list into sub-lists of (at most) the given size." + [(sub size list)]) + + ($.documentation /.repeated + "A list of the value x, repeated n times." + [(repeated n x)]) + + ($.documentation /.iterations + "Generates a list element by element until the function returns .#None." + [(iterations f x)]) + + ($.documentation /.one + "" + [(one check xs)]) + + ($.documentation /.all + "" + [(all check xs)]) + + ($.documentation /.example + "Yields the first value in the list that satisfies the predicate." + [(example predicate xs)]) + + ($.documentation /.interposed + "Puts a value between every two elements in the list." + [(interposed sep xs)]) + + ($.documentation /.size + "" + [(size list)]) + + ($.documentation /.item + "Fetches the element at the specified index." + [(item i xs)]) + + ($.documentation /.sorted + "A list ordered by a comparison function." + [(sorted < xs)]) + + ($.documentation /.empty? + "" + [(empty? xs)]) + + ($.documentation /.member? + "" + [(member? eq xs x)]) + + (~~ (with_template [<name> <doc>] + [($.documentation <name> + <doc>)] + + [/.head "Yields the first element of a list."] + [/.tail "For a list of size N, yields the N-1 elements after the first one."] + )) + + ($.documentation /.indices + "Produces all the valid indices for a given size." + [(indices size)]) + + ($.documentation /.zipped + "Create list zippers with the specified number of input lists." + [(def zipped_2 (zipped 2)) + (def zipped_3 (zipped 3)) + (zipped_3 xs ys zs) + ((zipped 3) xs ys zs)]) + + ($.documentation /.zipped_with + "Create list zippers with the specified number of input lists." + [(def zipped_with_2 (zipped_with 2)) + (def zipped_with_3 (zipped_with 3)) + (zipped_with_2 + xs ys) + ((zipped_with 2) + xs ys)]) + + ($.documentation /.last + "" + [(last xs)]) + + ($.documentation /.inits + (format "For a list of size N, yields the first N-1 elements." + \n "Will yield a .#None for empty lists.") + [(inits xs)]) + + ($.documentation /.together + "The sequential combination of all the lists.") + + ($.documentation /.with + "Enhances a monad with List functionality." + [(with monad)]) + + ($.documentation /.lifted + "Wraps a monadic value with List machinery." + [(lifted monad)]) + + ($.documentation /.enumeration + "Pairs every element in the list with its index, starting at 0." + [(enumeration xs)]) + + ($.documentation /.when + "Can be used as a guard in (co)monadic be/do expressions." + [(do monad + [value (do_something 1 2 3) + .when (passes_test? value)] + (do_something_else 4 5 6))])] + []))) diff --git a/stdlib/source/documentation/lux/data/collection/queue.lux b/stdlib/source/documentation/lux/data/collection/queue.lux index 19fee78c9..963776aa5 100644 --- a/stdlib/source/documentation/lux/data/collection/queue.lux +++ b/stdlib/source/documentation/lux/data/collection/queue.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -13,46 +13,39 @@ ["[0]" / ["[1][0]" priority]]) -(documentation: (/.Queue it) - "A first-in, first-out sequential data-structure.") - -(documentation: /.of_list - "" - [(of_list entries)]) - -(documentation: /.list - "" - [(list queue)]) - -(documentation: /.front - "Yields the first value in the queue, if any.") - -(documentation: /.member? - "" - [(member? equivalence queue member)]) - -(documentation: /.next - "" - [(next queue)]) - -(documentation: /.end - "" - [(end val queue)]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..Queue - ..of_list - ..list - ..front - ..member? - ..next - ..end - ($.default /.empty) + [($.default /.empty) ($.default /.size) ($.default /.empty?) ($.default /.equivalence) - ($.default /.functor)] + ($.default /.functor) + + ($.documentation (/.Queue it) + "A first-in, first-out sequential data-structure.") + + ($.documentation /.of_list + "" + [(of_list entries)]) + + ($.documentation /.list + "" + [(list queue)]) + + ($.documentation /.front + "Yields the first value in the queue, if any.") + + ($.documentation /.member? + "" + [(member? equivalence queue member)]) + + ($.documentation /.next + "" + [(next queue)]) + + ($.documentation /.end + "" + [(end val queue)])] [/priority.documentation])) diff --git a/stdlib/source/documentation/lux/data/collection/queue/priority.lux b/stdlib/source/documentation/lux/data/collection/queue/priority.lux index 47ccd89bb..4952a6954 100644 --- a/stdlib/source/documentation/lux/data/collection/queue/priority.lux +++ b/stdlib/source/documentation/lux/data/collection/queue/priority.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -11,21 +11,11 @@ [\\library ["[0]" /]]) -(documentation: /.member? - "" - [(member? equivalence queue member)]) - -(documentation: /.end - "" - [(end priority value queue)]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..member? - ..end - ($.default /.Priority) + [($.default /.Priority) ($.default /.max) ($.default /.min) ($.default (/.Queue it)) @@ -33,5 +23,13 @@ ($.default /.front) ($.default /.size) ($.default /.next) - ($.default /.empty?)] + ($.default /.empty?) + + ($.documentation /.member? + "" + [(member? equivalence queue member)]) + + ($.documentation /.end + "" + [(end priority value queue)])] [])) diff --git a/stdlib/source/documentation/lux/data/collection/sequence.lux b/stdlib/source/documentation/lux/data/collection/sequence.lux index 7c286aa0a..283eca310 100644 --- a/stdlib/source/documentation/lux/data/collection/sequence.lux +++ b/stdlib/source/documentation/lux/data/collection/sequence.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list has revised) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -11,61 +11,11 @@ [\\library ["[0]" /]]) -(documentation: (/.Sequence it) - "A sequential data-structure with fast random access.") - -(documentation: /.suffix - "" - [(suffix val sequence)]) - -(documentation: /.within_bounds? - "Determines whether the index is within the bounds of the sequence." - [(within_bounds? sequence idx)]) - -(documentation: /.item - "" - [(item idx sequence)]) - -(documentation: /.has - "" - [(has idx val sequence)]) - -(documentation: /.revised - "" - [(revised idx f sequence)]) - -(documentation: /.prefix - "" - [(prefix sequence)]) - -(documentation: /.list - "" - [(list sequence)]) - -(documentation: /.member? - "" - [(member? equivalence sequence val)]) - -(documentation: /.sequence - "Sequence literals." - [(is (Sequence Nat) - (sequence 12 34 56 78 90))]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..Sequence - ..suffix - ..within_bounds? - ..item - ..has - ..revised - ..prefix - ..list - ..member? - ..sequence - ($.default /.empty) + [($.default /.empty) ($.default /.size) ($.default /.index_out_of_bounds) ($.default /.of_list) @@ -78,5 +28,45 @@ ($.default /.monad) ($.default /.reversed) ($.default /.every?) - ($.default /.any?)] + ($.default /.any?) + + ($.documentation (/.Sequence it) + "A sequential data-structure with fast random access.") + + ($.documentation /.suffix + "" + [(suffix val sequence)]) + + ($.documentation /.within_bounds? + "Determines whether the index is within the bounds of the sequence." + [(within_bounds? sequence idx)]) + + ($.documentation /.item + "" + [(item idx sequence)]) + + ($.documentation /.has + "" + [(has idx val sequence)]) + + ($.documentation /.revised + "" + [(revised idx f sequence)]) + + ($.documentation /.prefix + "" + [(prefix sequence)]) + + ($.documentation /.list + "" + [(list sequence)]) + + ($.documentation /.member? + "" + [(member? equivalence sequence val)]) + + ($.documentation /.sequence + "Sequence literals." + [(is (Sequence Nat) + (sequence 12 34 56 78 90))])] [])) diff --git a/stdlib/source/documentation/lux/data/collection/set.lux b/stdlib/source/documentation/lux/data/collection/set.lux index 2eb5f11c9..b3a16c70c 100644 --- a/stdlib/source/documentation/lux/data/collection/set.lux +++ b/stdlib/source/documentation/lux/data/collection/set.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list has) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -13,36 +13,11 @@ ["[1][0]" multi] ["[1][0]" ordered]]) -(documentation: /.has - "" - [(has elem set)]) - -(documentation: /.difference - "" - [(difference sub base)]) - -(documentation: /.intersection - "" - [(intersection filter base)]) - -(documentation: /.sub? - "" - [(sub? super sub)]) - -(documentation: /.super? - "" - [(super? sub super)]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..has - ..difference - ..intersection - ..sub? - ..super? - ($.default (/.Set it)) + [($.default (/.Set it)) ($.default /.member_hash) ($.default /.empty) ($.default /.size) @@ -55,6 +30,26 @@ ($.default /.monoid) ($.default /.empty?) ($.default /.of_list) - ($.default /.predicate)] + ($.default /.predicate) + + ($.documentation /.has + "" + [(has elem set)]) + + ($.documentation /.difference + "" + [(difference sub base)]) + + ($.documentation /.intersection + "" + [(intersection filter base)]) + + ($.documentation /.sub? + "" + [(sub? super sub)]) + + ($.documentation /.super? + "" + [(super? sub super)])] [/multi.documentation /ordered.documentation])) diff --git a/stdlib/source/documentation/lux/data/collection/set/multi.lux b/stdlib/source/documentation/lux/data/collection/set/multi.lux index 5f48a9e9e..8c494a583 100644 --- a/stdlib/source/documentation/lux/data/collection/set/multi.lux +++ b/stdlib/source/documentation/lux/data/collection/set/multi.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list has) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -10,50 +10,11 @@ [\\library ["[0]" /]]) -(documentation: (/.Set it) - "A set that keeps track of repetition in its entries.") - -(documentation: /.has - "" - [(has multiplicity elem set)]) - -(documentation: /.lacks - "" - [(lacks multiplicity elem set)]) - -(documentation: /.multiplicity - "" - [(multiplicity set elem)]) - -(documentation: /.sub? - "Is 'subject' a sub-set of 'reference'?" - [(sub? reference subject)]) - -(documentation: /.support - "A set of the unique (non repeated) members." - [(support set)]) - -(documentation: /.member? - "" - [(member? set elem)]) - -(documentation: /.super? - "Is 'subject' a super-set of 'reference'?") - (.def .public documentation (.List $.Module) ($.module /._ "" - [..Set - ..has - ..lacks - ..multiplicity - - ..sub? - ..support - ..member? - ..super? - ($.default /.empty) + [($.default /.empty) ($.default /.size) ($.default /.list) ($.default /.equivalence) @@ -64,5 +25,35 @@ ($.default /.union) ($.default /.sum) ($.default /.intersection) - ($.default /.difference)] + ($.default /.difference) + + ($.documentation (/.Set it) + "A set that keeps track of repetition in its entries.") + + ($.documentation /.has + "" + [(has multiplicity elem set)]) + + ($.documentation /.lacks + "" + [(lacks multiplicity elem set)]) + + ($.documentation /.multiplicity + "" + [(multiplicity set elem)]) + + ($.documentation /.sub? + "Is 'subject' a sub-set of 'reference'?" + [(sub? reference subject)]) + + ($.documentation /.support + "A set of the unique (non repeated) members." + [(support set)]) + + ($.documentation /.member? + "" + [(member? set elem)]) + + ($.documentation /.super? + "Is 'subject' a super-set of 'reference'?")] [])) diff --git a/stdlib/source/documentation/lux/data/collection/set/ordered.lux b/stdlib/source/documentation/lux/data/collection/set/ordered.lux index 88ae58dc6..ac34d2f5d 100644 --- a/stdlib/source/documentation/lux/data/collection/set/ordered.lux +++ b/stdlib/source/documentation/lux/data/collection/set/ordered.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list has) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -10,45 +10,11 @@ [\\library ["[0]" /]]) -(documentation: (/.Set it) - "A set with ordered entries.") - -(documentation: /.member? - "" - [(member? set elem)]) - -(documentation: /.has - "" - [(has elem set)]) - -(documentation: /.lacks - "" - [(lacks elem set)]) - -(documentation: /.difference - "" - [(difference param subject)]) - -(documentation: /.sub? - "Is 'sub' a sub-set of 'super'?" - [(sub? super sub)]) - -(documentation: /.super? - "Is 'super' a super-set of 'sub'?" - [(super? sub super)]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..Set - ..member? - ..has - ..lacks - ..difference - ..sub? - ..super? - ($.default /.empty) + [($.default /.empty) ($.default /.min) ($.default /.max) ($.default /.size) @@ -57,5 +23,32 @@ ($.default /.of_list) ($.default /.union) ($.default /.intersection) - ($.default /.equivalence)] + ($.default /.equivalence) + + ($.documentation (/.Set it) + "A set with ordered entries.") + + ($.documentation /.member? + "" + [(member? set elem)]) + + ($.documentation /.has + "" + [(has elem set)]) + + ($.documentation /.lacks + "" + [(lacks elem set)]) + + ($.documentation /.difference + "" + [(difference param subject)]) + + ($.documentation /.sub? + "Is 'sub' a sub-set of 'super'?" + [(sub? super sub)]) + + ($.documentation /.super? + "Is 'super' a super-set of 'sub'?" + [(super? sub super)])] [])) diff --git a/stdlib/source/documentation/lux/data/collection/stack.lux b/stdlib/source/documentation/lux/data/collection/stack.lux index da805da8a..e05e774c2 100644 --- a/stdlib/source/documentation/lux/data/collection/stack.lux +++ b/stdlib/source/documentation/lux/data/collection/stack.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -10,32 +10,28 @@ [\\library ["[0]" /]]) -(documentation: (/.Stack it) - "A first-in, last-out sequential data-structure.") - -(documentation: /.value - "Yields the top value in the stack, if any." - [(value stack)]) - -(documentation: /.next - "" - [(next stack)]) - -(documentation: /.top - "" - [(top value stack)]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..Stack - ..value - ..next - ..top - ($.default /.empty) + [($.default /.empty) ($.default /.size) ($.default /.empty?) ($.default /.equivalence) - ($.default /.functor)] + ($.default /.functor) + + ($.documentation (/.Stack it) + "A first-in, last-out sequential data-structure.") + + ($.documentation /.value + "Yields the top value in the stack, if any." + [(value stack)]) + + ($.documentation /.next + "" + [(next stack)]) + + ($.documentation /.top + "" + [(top value stack)])] [])) diff --git a/stdlib/source/documentation/lux/data/collection/stream.lux b/stdlib/source/documentation/lux/data/collection/stream.lux index f77decc5e..5a5021150 100644 --- a/stdlib/source/documentation/lux/data/collection/stream.lux +++ b/stdlib/source/documentation/lux/data/collection/stream.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list pattern) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -11,55 +11,11 @@ [\\library ["[0]" /]]) -(documentation: (/.Stream it) - "An infinite sequence of values.") - -(documentation: /.iterations - "A stateful way of infinitely calculating the values of a stream." - [(iterations step init)]) - -(documentation: /.repeated - "Repeat a value forever." - [(repeated x)]) - -(documentation: /.cycle - "Go over the elements of a list forever." - [(cycle [start next])]) - -(documentation: /.item - "" - [(item idx stream)]) - -(documentation: /.only - "A new stream only with items that satisfy the predicate." - [(only predicate stream)]) - -(documentation: /.partition - (format "Split a stream in two based on a predicate." - \n "The left side contains all entries for which the predicate is #1." - \n "The right side contains all entries for which the predicate is #0.") - [(partition left? xs)]) - -(documentation: /.pattern - (format "Allows destructuring of streams in pattern-matching expressions." - \n "Caveat emptor: Only use it for destructuring, and not for testing values within the streams.") - [(let [(pattern x y z _tail) (some_stream_func +1 +2 +3)] - (func x y z))]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..Stream - ..iterations - ..repeated - ..cycle - ..item - - ..only - ..partition - ..pattern - ($.default /.head) + [($.default /.head) ($.default /.tail) ($.default /.functor) ($.default /.comonad) @@ -68,5 +24,40 @@ ($.default /.first) ($.default /.after) ($.default /.split_when) - ($.default /.split_at)] + ($.default /.split_at) + + ($.documentation (/.Stream it) + "An infinite sequence of values.") + + ($.documentation /.iterations + "A stateful way of infinitely calculating the values of a stream." + [(iterations step init)]) + + ($.documentation /.repeated + "Repeat a value forever." + [(repeated x)]) + + ($.documentation /.cycle + "Go over the elements of a list forever." + [(cycle [start next])]) + + ($.documentation /.item + "" + [(item idx stream)]) + + ($.documentation /.only + "A new stream only with items that satisfy the predicate." + [(only predicate stream)]) + + ($.documentation /.partition + (format "Split a stream in two based on a predicate." + \n "The left side contains all entries for which the predicate is #1." + \n "The right side contains all entries for which the predicate is #0.") + [(partition left? xs)]) + + ($.documentation /.pattern + (format "Allows destructuring of streams in pattern-matching expressions." + \n "Caveat emptor: Only use it for destructuring, and not for testing values within the streams.") + [(let [(pattern x y z _tail) (some_stream_func +1 +2 +3)] + (func x y z))])] [])) diff --git a/stdlib/source/documentation/lux/data/collection/tree.lux b/stdlib/source/documentation/lux/data/collection/tree.lux index 9c9fe9ad5..91324bbcf 100644 --- a/stdlib/source/documentation/lux/data/collection/tree.lux +++ b/stdlib/source/documentation/lux/data/collection/tree.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -13,40 +13,35 @@ ["[1][0]" finger] ["[1][0]" zipper]]) -(documentation: (/.Tree it) - "A generic tree data-structure.") - -(documentation: /.flat - "All the leaf values of the tree, in order." - [(flat tree)]) - -(documentation: /.leaf - "" - [(leaf value)]) - -(documentation: /.branch - "" - [(branch value children)]) - -(documentation: /.tree - "Tree literals." - [(is (Tree Nat) - (tree 12 - {34 {} - 56 {} - 78 {90 {}}}))]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..Tree - ..flat - ..leaf - ..branch - ..tree - ($.default /.equivalence) + [($.default /.equivalence) ($.default /.functor) - ($.default /.mix)] + ($.default /.mix) + + ($.documentation (/.Tree it) + "A generic tree data-structure.") + + ($.documentation /.flat + "All the leaf values of the tree, in order." + [(flat tree)]) + + ($.documentation /.leaf + "" + [(leaf value)]) + + ($.documentation /.branch + "" + [(branch value children)]) + + ($.documentation /.tree + "Tree literals." + [(is (Tree Nat) + (tree 12 + {34 {} + 56 {} + 78 {90 {}}}))])] [/finger.documentation /zipper.documentation])) diff --git a/stdlib/source/documentation/lux/data/collection/tree/finger.lux b/stdlib/source/documentation/lux/data/collection/tree/finger.lux index 31f2dac1f..7386f313e 100644 --- a/stdlib/source/documentation/lux/data/collection/tree/finger.lux +++ b/stdlib/source/documentation/lux/data/collection/tree/finger.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -10,48 +10,40 @@ [\\library ["[0]" /]]) -(documentation: (/.Tree @ tag value) - "A finger tree.") +(.def .public documentation + (.List $.Module) + ($.module /._ + "" + [($.default /.tag) + ($.default /.root) -(documentation: (/.Builder @ tag) - "A builder for finter tree structures.") + ($.documentation (/.Tree @ tag value) + "A finger tree.") -(documentation: /.builder - "A new builder using the given monoid." - [(builder monoid)]) + ($.documentation (/.Builder @ tag) + "A builder for finter tree structures.") -(documentation: /.value - "" - [(value tree)]) + ($.documentation /.builder + "A new builder using the given monoid." + [(builder monoid)]) -(documentation: /.tags - "" - [(tags tree)]) + ($.documentation /.value + "" + [(value tree)]) -(documentation: /.values - "" - [(values tree)]) + ($.documentation /.tags + "" + [(tags tree)]) -(documentation: /.one - "Finds one value that meets the predicate." - [(one predicate tree)]) + ($.documentation /.values + "" + [(values tree)]) -(documentation: /.exists? - "Verifies that a value exists which meets the predicate." - [(exists? predicate tree)]) + ($.documentation /.one + "Finds one value that meets the predicate." + [(one predicate tree)]) -(.def .public documentation - (.List $.Module) - ($.module /._ - "" - [..Tree - ..Builder - ..builder - ..value - ..tags - ..values - ..one - ..exists? - ($.default /.tag) - ($.default /.root)] + ($.documentation /.exists? + "Verifies that a value exists which meets the predicate." + [(exists? predicate tree)])] [])) diff --git a/stdlib/source/documentation/lux/data/collection/tree/zipper.lux b/stdlib/source/documentation/lux/data/collection/tree/zipper.lux index 4ad5aae46..76fb1602c 100644 --- a/stdlib/source/documentation/lux/data/collection/tree/zipper.lux +++ b/stdlib/source/documentation/lux/data/collection/tree/zipper.lux @@ -1,7 +1,7 @@ (.require [library [lux (.except list) - ["$" documentation (.only documentation:)] + ["$" documentation] [data ["[0]" text (.only \n) ["%" \\format (.only format)]]] @@ -10,35 +10,11 @@ [\\library ["[0]" /]]) -(documentation: (/.Zipper it) - "Tree zippers, for easy navigation and editing of trees.") - -(documentation: /.set - "" - [(set value zipper)]) - -(documentation: /.update - "" - [(update transform zipper)]) - -(documentation: /.interpose - "" - [(interpose value zipper)]) - -(documentation: /.adopt - "" - [(adopt value zipper)]) - (.def .public documentation (.List $.Module) ($.module /._ "" - [..Zipper - ..set - ..update - ..interpose - ..adopt - ($.default /.equivalence) + [($.default /.equivalence) ($.default /.zipper) ($.default /.tree) ($.default /.value) @@ -60,5 +36,24 @@ ($.default /.insert_left) ($.default /.insert_right) ($.default /.functor) - ($.default /.comonad)] + ($.default /.comonad) + + ($.documentation (/.Zipper it) + "Tree zippers, for easy navigation and editing of trees.") + + ($.documentation /.set + "" + [(set value zipper)]) + + ($.documentation /.update + "" + [(update transform zipper)]) + + ($.documentation /.interpose + "" + [(interpose value zipper)]) + + ($.documentation /.adopt + "" + [(adopt value zipper)])] [])) |