From 17e7566be51df5e428a6b10e6469201a8a9468da Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Sat, 7 Aug 2021 02:20:09 -0400 Subject: Made the be/de macros for (co)monadic expression extensible. --- stdlib/source/program/aedifex/command/auto.lux | 2 +- stdlib/source/program/aedifex/command/build.lux | 8 ++++---- stdlib/source/program/aedifex/command/clean.lux | 2 +- stdlib/source/program/aedifex/command/deploy.lux | 2 +- stdlib/source/program/aedifex/command/deps.lux | 6 +++--- stdlib/source/program/aedifex/command/install.lux | 2 +- stdlib/source/program/aedifex/command/test.lux | 6 +++--- stdlib/source/program/aedifex/dependency/deployment.lux | 4 ++-- stdlib/source/program/aedifex/dependency/resolution.lux | 10 +++++----- stdlib/source/program/aedifex/format.lux | 2 +- stdlib/source/program/aedifex/parser.lux | 2 +- stdlib/source/program/aedifex/pom.lux | 12 ++++++------ stdlib/source/program/aedifex/repository/local.lux | 2 +- 13 files changed, 30 insertions(+), 30 deletions(-) (limited to 'stdlib/source/program/aedifex') diff --git a/stdlib/source/program/aedifex/command/auto.lux b/stdlib/source/program/aedifex/command/auto.lux index 975ee26ba..f4e2ab18f 100644 --- a/stdlib/source/program/aedifex/command/auto.lux +++ b/stdlib/source/program/aedifex/command/auto.lux @@ -54,7 +54,7 @@ (do {! async.monad} [targets (|> profile (get@ #///.sources) - set.to_list + set.list (monad.map ! (..targets fs)) (\ ! map list.concat))] (do {! ///action.monad} diff --git a/stdlib/source/program/aedifex/command/build.lux b/stdlib/source/program/aedifex/command/build.lux index 00791f787..23429f123 100644 --- a/stdlib/source/program/aedifex/command/build.lux +++ b/stdlib/source/program/aedifex/command/build.lux @@ -271,11 +271,11 @@ (#.Some program_module) (do async.monad [environment (program.environment async.monad program) - #let [home (\ program home) + .let [home (\ program home) working_directory (\ program directory)]] (do ///action.monad [[resolution compiler] (async\in (..compiler resolution (get@ #///.compiler profile))) - #let [host_dependencies (..host_dependencies fs home resolution) + .let [host_dependencies (..host_dependencies fs home resolution) [[command compiler_params] output] (case compiler (#JVM dependency) [(|> (..path fs home dependency) @@ -295,11 +295,11 @@ / (\ fs separator) cache_directory (format working_directory / target)] _ (console.write_line ..start console) - #let [full_parameters (list.concat (list compiler_params + .let [full_parameters (list.concat (list compiler_params (list "build") (..plural "--library" (..libraries fs home resolution)) (..plural "--host_dependency" host_dependencies) - (..plural "--source" (set.to_list (get@ #///.sources profile))) + (..plural "--source" (set.list (get@ #///.sources profile))) (..singular "--target" cache_directory) (..singular "--module" program_module)))] process (\ shell execute [environment diff --git a/stdlib/source/program/aedifex/command/clean.lux b/stdlib/source/program/aedifex/command/clean.lux index c7443beb6..c03a09b49 100644 --- a/stdlib/source/program/aedifex/command/clean.lux +++ b/stdlib/source/program/aedifex/command/clean.lux @@ -33,7 +33,7 @@ (def: #export (do! console fs profile) (-> (Console Async) (file.System Async) (Command Any)) (do {! async.monad} - [#let [target (get@ #///.target profile)] + [.let [target (get@ #///.target profile)] ? (\ fs directory? target) _ (let [! ///action.monad] (if ? diff --git a/stdlib/source/program/aedifex/command/deploy.lux b/stdlib/source/program/aedifex/command/deploy.lux index 9e74a53a5..b7b08f517 100644 --- a/stdlib/source/program/aedifex/command/deploy.lux +++ b/stdlib/source/program/aedifex/command/deploy.lux @@ -61,7 +61,7 @@ (do {! ///action.monad} [library (|> profile (get@ #/.sources) - set.to_list + set.list (export.library fs) (\ ! map (binary.run tar.writer))) pom (\ async.monad in (///pom.write profile)) diff --git a/stdlib/source/program/aedifex/command/deps.lux b/stdlib/source/program/aedifex/command/deps.lux index 3d26a042b..342c9c0bc 100644 --- a/stdlib/source/program/aedifex/command/deps.lux +++ b/stdlib/source/program/aedifex/command/deps.lux @@ -40,8 +40,8 @@ (def: #export (do! console local remotes new_repository profile) (-> (Console Async) (Repository Async) (List (Repository Async)) (-> URL (Repository Async)) (Command Resolution)) (do async.monad - [#let [dependencies (|> (get@ #///.dependencies profile) - set.to_list + [.let [dependencies (|> (get@ #///.dependencies profile) + set.list (#.Item (get@ #///.compiler profile)))] [local_successes local_failures cache] (///dependency/resolution.all console (list local) @@ -67,7 +67,7 @@ ["Remote successes" (|> remote_successes (set.of_list ///dependency.hash) (set.difference (set.of_list ///dependency.hash local_successes)) - set.to_list + set.list (list.sort (\ ///dependency.order <)) (exception.listing ..format))] ["Remote failures" (|> remote_failures diff --git a/stdlib/source/program/aedifex/command/install.lux b/stdlib/source/program/aedifex/command/install.lux index ddc73ca36..b39b30f85 100644 --- a/stdlib/source/program/aedifex/command/install.lux +++ b/stdlib/source/program/aedifex/command/install.lux @@ -56,7 +56,7 @@ (do ///action.monad [package (|> profile (get@ #/.sources) - set.to_list + set.list (export.library fs)) pom (|> profile ///pom.write diff --git a/stdlib/source/program/aedifex/command/test.lux b/stdlib/source/program/aedifex/command/test.lux index 7af6a4351..78859819d 100644 --- a/stdlib/source/program/aedifex/command/test.lux +++ b/stdlib/source/program/aedifex/command/test.lux @@ -32,15 +32,15 @@ (-> (Console Async) (Program Async) (file.System Async) (Shell Async) Resolution (Command [Exit Any])) (do async.monad [environment (program.environment async.monad program) - #let [working_directory (\ program directory)]] + .let [working_directory (\ program directory)]] (do {! ///action.monad} - [#let [home (\ program home)] + [.let [home (\ program home)] [build_exit compiler program] (//build.do! console program fs shell resolution (set@ #///.program (get@ #///.test profile) profile))] (if (i.= shell.normal build_exit) (do ! [_ (console.write_line ..start console) - #let [host_dependencies (//build.host_dependencies fs home resolution) + .let [host_dependencies (//build.host_dependencies fs home resolution) [test_command test_parameters] (case compiler (#//build.JVM dependency) (|> program diff --git a/stdlib/source/program/aedifex/dependency/deployment.lux b/stdlib/source/program/aedifex/dependency/deployment.lux index a6302d5f0..2b39403a9 100644 --- a/stdlib/source/program/aedifex/dependency/deployment.lux +++ b/stdlib/source/program/aedifex/dependency/deployment.lux @@ -91,7 +91,7 @@ (do try.monad [now (: (Try ///artifact/time.Time) (///artifact/time.of_instant now)) - #let [version_template (get@ #///artifact.version artifact) + .let [version_template (get@ #///artifact.version artifact) snapshot (|> snapshot (update@ [#///metadata/snapshot.versioning #///artifact/versioning.snapshot] (function (_ snapshot) @@ -119,7 +119,7 @@ (-> (Repository Async) Dependency Package (Async (Try Artifact))) (do {! async.monad} [now (async.future instant.now) - #let [version_template (get@ #///artifact.version artifact)]] + .let [version_template (get@ #///artifact.version artifact)]] (do (try.with !) [_ (with_status repository version_template [artifact type] (get@ #///package.library package)) diff --git a/stdlib/source/program/aedifex/dependency/resolution.lux b/stdlib/source/program/aedifex/dependency/resolution.lux index a48909375..c286c92c2 100644 --- a/stdlib/source/program/aedifex/dependency/resolution.lux +++ b/stdlib/source/program/aedifex/dependency/resolution.lux @@ -6,7 +6,7 @@ [abstract [codec (#+ Codec)] [equivalence (#+ Equivalence)] - [monad (#+ Monad do)]] + [monad (#+ do)]] [control ["." try (#+ Try) ("#\." functor)] ["." exception (#+ Exception exception:)] @@ -128,7 +128,7 @@ extension (///artifact/extension.extension type)] (do (try.with async.monad) [snapshot (///metadata/snapshot.read repository artifact) - #let [version_template (get@ [#///metadata/snapshot.artifact #///artifact.version] snapshot) + .let [version_template (get@ [#///metadata/snapshot.artifact #///artifact.version] snapshot) artifact_version (value.format {#value.version version_template #value.snapshot (get@ [#///metadata/snapshot.versioning #///artifact/versioning.snapshot] snapshot)}) artifact (set@ #///artifact.version artifact_version artifact)] @@ -230,14 +230,14 @@ (case ?package (#try.Success package) (do ! - [#let [sub_dependencies (|> package + [.let [sub_dependencies (|> package ///package.dependencies - (try\map set.to_list) + (try\map set.list) (try.else (list))) ## For security reasons, it's not a good idea to allow dependencies to introduce repositories. ## package_repositories (|> package ## ///package.repositories - ## (try\map set.to_list) + ## (try\map set.list) ## (try.else (list)) ## (list\map new_repository)) ## sub_repositories (list\compose repositories package_repositories) diff --git a/stdlib/source/program/aedifex/format.lux b/stdlib/source/program/aedifex/format.lux index c2c0849ac..c7adaa33e 100644 --- a/stdlib/source/program/aedifex/format.lux +++ b/stdlib/source/program/aedifex/format.lux @@ -90,7 +90,7 @@ (def: (on_set field value format aggregate) (All [a] (-> Text (Set a) (Format a) Aggregate Aggregate)) - (..on_list field (set.to_list value) format aggregate)) + (..on_list field (set.list value) format aggregate)) (def: (on_dictionary field value key_format value_format aggregate) (All [k v] diff --git a/stdlib/source/program/aedifex/parser.lux b/stdlib/source/program/aedifex/parser.lux index b2e6ab0f9..7405deebc 100644 --- a/stdlib/source/program/aedifex/parser.lux +++ b/stdlib/source/program/aedifex/parser.lux @@ -185,7 +185,7 @@ (dictionary.of_list text.hash) (.record (<>.some (<>.and .local_tag .any)))) - #let [^parents (: (Parser (List /.Name)) + .let [^parents (: (Parser (List /.Name)) (<>.else (list) (..plural input "parents" .text))) ^identity (: (Parser (Maybe Artifact)) diff --git a/stdlib/source/program/aedifex/pom.lux b/stdlib/source/program/aedifex/pom.lux index e37bbe0e9..e1f242b69 100644 --- a/stdlib/source/program/aedifex/pom.lux +++ b/stdlib/source/program/aedifex/pom.lux @@ -128,11 +128,11 @@ (def: (info value) (-> /.Info (List XML)) ($_ list\compose - (|> value (get@ #/.url) (maybe\map (..property ..url_tag)) maybe.to_list) - (|> value (get@ #/.description) (maybe\map (..property "description")) maybe.to_list) + (|> value (get@ #/.url) (maybe\map (..property ..url_tag)) maybe.list) + (|> value (get@ #/.description) (maybe\map (..property "description")) maybe.list) (|> value (get@ #/.licenses) (list\map ..license) (..group "licenses") list) - (|> value (get@ #/.scm) (maybe\map ..scm) maybe.to_list) - (|> value (get@ #/.organization) (maybe\map ..organization) maybe.to_list) + (|> value (get@ #/.scm) (maybe\map ..scm) maybe.list) + (|> value (get@ #/.organization) (maybe\map ..organization) maybe.list) (|> value (get@ #/.developers) (list\map ..developer) (..group "developers") list) (|> value (get@ #/.contributors) (list\map ..contributor) (..group "contributors") list) )) @@ -147,8 +147,8 @@ ($_ list\compose (list ..version) (..artifact identity) - (|> value (get@ #/.repositories) set.to_list (list\map ..repository) (..group "repositories") list) - (|> value (get@ #/.dependencies) set.to_list (list\map ..dependency) (..group ..dependencies_tag) list) + (|> value (get@ #/.repositories) set.list (list\map ..repository) (..group "repositories") list) + (|> value (get@ #/.dependencies) set.list (list\map ..dependency) (..group ..dependencies_tag) list) ))) _ diff --git a/stdlib/source/program/aedifex/repository/local.lux b/stdlib/source/program/aedifex/repository/local.lux index db9395c09..6cfdd0f0b 100644 --- a/stdlib/source/program/aedifex/repository/local.lux +++ b/stdlib/source/program/aedifex/repository/local.lux @@ -48,7 +48,7 @@ (def: (upload uri content) (do {! async.monad} - [#let [absolute_path (..absolute_path program (\ fs separator) uri)] + [.let [absolute_path (..absolute_path program (\ fs separator) uri)] ? (\ fs file? absolute_path) _ (if ? (in []) -- cgit v1.2.3