diff options
Diffstat (limited to 'stdlib/source/library/lux/tool/compiler/meta/archive.lux')
-rw-r--r-- | stdlib/source/library/lux/tool/compiler/meta/archive.lux | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/stdlib/source/library/lux/tool/compiler/meta/archive.lux b/stdlib/source/library/lux/tool/compiler/meta/archive.lux index 4ec08ed90..a63bde0a1 100644 --- a/stdlib/source/library/lux/tool/compiler/meta/archive.lux +++ b/stdlib/source/library/lux/tool/compiler/meta/archive.lux @@ -1,6 +1,6 @@ (.using [library - [lux {"-" Module} + [lux {"-" Module has} [abstract ["[0]" equivalence {"+" Equivalence}] ["[0]" monad {"+" do}]] @@ -79,7 +79,7 @@ (def: next (-> Archive module.ID) - (|>> :representation (value@ #next))) + (|>> :representation (the #next))) (def: .public empty Archive @@ -108,8 +108,8 @@ {try.#Success [/#next (|> archive :representation - (revised@ #resolver (dictionary.has module [/#next (: (Maybe (Entry Any)) {.#None})])) - (revised@ #next ++) + (revised #resolver (dictionary.has module [/#next (: (Maybe (Entry Any)) {.#None})])) + (revised #next ++) :abstraction)]}))) (def: .public (has module entry archive) @@ -119,15 +119,15 @@ {.#Some [id {.#None}]} {try.#Success (|> archive :representation - (revised@ ..#resolver (dictionary.has module [id {.#Some entry}])) + (revised ..#resolver (dictionary.has module [id {.#Some entry}])) :abstraction)} {.#Some [id {.#Some [existing_module existing_output existing_registry]}]} - (if (same? (value@ module.#document existing_module) - (value@ [#module module.#document] entry)) + (if (same? (the module.#document existing_module) + (the [#module module.#document] entry)) ... TODO: Find out why this code allows for the same module to be added more than once. It looks fishy... {try.#Success archive} - (exception.except ..cannot_replace_document [module (value@ module.#document existing_module) (value@ [#module module.#document] entry)])) + (exception.except ..cannot_replace_document [module (the module.#document existing_module) (the [#module module.#document] entry)])) {.#None} (exception.except ..module_must_be_reserved_before_it_can_be_added [module])))) @@ -135,7 +135,7 @@ (def: .public entries (-> Archive (List [descriptor.Module [module.ID (Entry Any)]])) (|>> :representation - (value@ #resolver) + (the #resolver) dictionary.entries (list.all (function (_ [module [module_id entry]]) (# maybe.monad each (|>> [module_id] [module]) entry))))) @@ -165,7 +165,7 @@ (def: .public archived (-> Archive (List descriptor.Module)) (|>> :representation - (value@ #resolver) + (the #resolver) dictionary.entries (list.all (function (_ [module [id descriptor+document]]) (case descriptor+document @@ -185,13 +185,13 @@ (def: .public reserved (-> Archive (List descriptor.Module)) (|>> :representation - (value@ #resolver) + (the #resolver) dictionary.keys)) (def: .public reservations (-> Archive (List [descriptor.Module module.ID])) (|>> :representation - (value@ #resolver) + (the #resolver) dictionary.entries (list#each (function (_ [module [id _]]) [module id])))) @@ -201,17 +201,17 @@ (let [[+next +resolver] (:representation additions)] (|> archive :representation - (revised@ #next (n.max +next)) - (revised@ #resolver (function (_ resolver) - (list#mix (function (_ [module [id entry]] resolver) - (case entry - {.#Some _} - (dictionary.has module [id entry] resolver) - - {.#None} - resolver)) - resolver - (dictionary.entries +resolver)))) + (revised #next (n.max +next)) + (revised #resolver (function (_ resolver) + (list#mix (function (_ [module [id entry]] resolver) + (case entry + {.#Some _} + (dictionary.has module [id entry] resolver) + + {.#None} + resolver)) + resolver + (dictionary.entries +resolver)))) :abstraction))) (type: Reservation @@ -262,6 +262,6 @@ [#next next #resolver (list#mix (function (_ [module id] archive) (dictionary.has module [id (: (Maybe (Entry Any)) {.#None})] archive)) - (value@ #resolver (:representation ..empty)) + (the #resolver (:representation ..empty)) reservations)])))) ) |