diff options
author | Eduardo Julian | 2022-07-09 14:35:38 -0400 |
---|---|---|
committer | Eduardo Julian | 2022-07-09 14:35:38 -0400 |
commit | 7db42ab1b9d3c764772ca63c74bf44bb2b8b8325 (patch) | |
tree | bd1c865dea0902790f3e462cec4f9bc8d8ae428f /lux-scheme | |
parent | fc2737b5226eda69c12bc593e83e22ed54e4d3af (diff) |
First-class programs instead of having a "lux program" extension.
Diffstat (limited to 'lux-scheme')
-rw-r--r-- | lux-scheme/source/program.lux | 53 |
1 files changed, 27 insertions, 26 deletions
diff --git a/lux-scheme/source/program.lux b/lux-scheme/source/program.lux index d4744ba40..b6d06f341 100644 --- a/lux-scheme/source/program.lux +++ b/lux-scheme/source/program.lux @@ -1,6 +1,6 @@ (.require [lux (.except) - [program (.only program:)] + [program (.only program)] ["[0]" ffi] ["[0]" debug] [abstract @@ -454,28 +454,29 @@ (-> Any (Promise Any)) (promise.future (at world/program.default exit +0))) -(`` (program: [service /cli.service] - (let [extension ".scm"] - (do io.monad - [platform ..platform - now instant.now] - (exec (do promise.monad - [_ (/.compiler [/static.#host @.scheme - /static.#host_module_extension extension - /static.#target (/cli.target service) - /static.#artifact_extension extension] - ..expander - analysis.bundle - (io.io platform) - generation.bundle - extension/bundle.empty - ..program - [_.Var _.Expression _.Expression] - ..extender - service - [(packager.package now) - (format (/cli.target service) - (at file.default separator) - "program.tar")])] - (..declare_success! [])) - (io.io [])))))) +(`` (def _ + (program [service /cli.service] + (let [extension ".scm"] + (do io.monad + [platform ..platform + now instant.now] + (exec (do promise.monad + [_ (/.compiler [/static.#host @.scheme + /static.#host_module_extension extension + /static.#target (/cli.target service) + /static.#artifact_extension extension] + ..expander + analysis.bundle + (io.io platform) + generation.bundle + extension/bundle.empty + ..program + [_.Var _.Expression _.Expression] + ..extender + service + [(packager.package now) + (format (/cli.target service) + (at file.default separator) + "program.tar")])] + (..declare_success! [])) + (io.io []))))))) |