From 7db42ab1b9d3c764772ca63c74bf44bb2b8b8325 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Sat, 9 Jul 2022 14:35:38 -0400 Subject: First-class programs instead of having a "lux program" extension. --- lux-r/source/program.lux | 59 ++++++++++++++++++++++++------------------------ 1 file changed, 30 insertions(+), 29 deletions(-) (limited to 'lux-r/source/program.lux') diff --git a/lux-r/source/program.lux b/lux-r/source/program.lux index 7cb8645f7..42d095a41 100644 --- a/lux-r/source/program.lux +++ b/lux-r/source/program.lux @@ -1,6 +1,6 @@ (.require [lux (.except) - [program (.only program:)] + [program (.only program)] ["[0]" ffi] ["[0]" debug] [abstract @@ -596,31 +596,32 @@ (_.apply/0 $program []) ))) -(`` (program: [service /cli.service] - (let [extension ".r"] - (do io.monad - [[interpreter platform] ..platform] - (exec (do promise.monad - [_ (/.compiler [/static.#host @.r - /static.#host_module_extension extension - /static.#target (/cli.target service) - /static.#artifact_extension extension] - (..expander interpreter) - analysis.bundle - (io.io platform) - generation.bundle - extension/bundle.empty - ..program - [_.SVar _.Expression _.Expression] - ..extender - service - [(packager.package (_.manual "") - _.code - _.then - ..scope) - (format (/cli.target service) - (at file.default separator) - "program" - extension)])] - (..declare_success! [])) - (io.io [])))))) +(`` (def _ + (program [service /cli.service] + (let [extension ".r"] + (do io.monad + [[interpreter platform] ..platform] + (exec (do promise.monad + [_ (/.compiler [/static.#host @.r + /static.#host_module_extension extension + /static.#target (/cli.target service) + /static.#artifact_extension extension] + (..expander interpreter) + analysis.bundle + (io.io platform) + generation.bundle + extension/bundle.empty + ..program + [_.SVar _.Expression _.Expression] + ..extender + service + [(packager.package (_.manual "") + _.code + _.then + ..scope) + (format (/cli.target service) + (at file.default separator) + "program" + extension)])] + (..declare_success! [])) + (io.io []))))))) -- cgit v1.2.3