aboutsummaryrefslogtreecommitdiff
path: root/new-luxc/source/program.lux
diff options
context:
space:
mode:
Diffstat (limited to 'new-luxc/source/program.lux')
-rw-r--r--new-luxc/source/program.lux38
1 files changed, 27 insertions, 11 deletions
diff --git a/new-luxc/source/program.lux b/new-luxc/source/program.lux
index 2b2278cec..d802f7f32 100644
--- a/new-luxc/source/program.lux
+++ b/new-luxc/source/program.lux
@@ -25,22 +25,33 @@
[phase
["." macro (#+ Expander)]
[extension (#+ Phase Bundle Operation Handler Extender)
+ ["." bundle]
["." analysis #_
["#" jvm]]
["." directive #_
["#" jvm]]]
["." generation #_
["#" jvm/extension]
- ["." jvm
- ["." runtime (#+ Anchor Definition)]
- ["#/." program]
+ ["." jvm #_
+ ## ["." runtime (#+ Anchor Definition)]
["." packager]
- ["#/." host]]]]
+ ## ["#/." host]
+ ]]]
[default
["." platform (#+ Platform)]]]]]
[program
["/" compositor
- ["/." cli]]])
+ ["/." cli]]]
+ [luxc
+ [lang
+ [host
+ ["_" jvm]]
+ [translation
+ ["." jvm
+ ["." runtime]
+ ["." expression]
+ ["#/." program]
+ ["translation" extension]]]]])
(import: #long java/lang/reflect/Method
(invoke [java/lang/Object [java/lang/Object]] #try java/lang/Object))
@@ -85,14 +96,18 @@
apply-method))))
(def: #export platform
- (IO (Platform IO Anchor (Bytecode Any) Definition))
+ ## (IO (Platform IO Anchor (Bytecode Any) Definition))
+ (IO (Platform IO _.Anchor _.Inst _.Definition))
(do io.monad
- [host jvm/host.host]
+ [## host jvm/host.host
+ host jvm.host]
(wrap {#platform.&monad io.monad
#platform.&file-system file.system
#platform.host host
- #platform.phase jvm.generate
- #platform.runtime runtime.generate})))
+ ## #platform.phase jvm.generate
+ #platform.phase expression.translate
+ ## #platform.runtime runtime.generate
+ #platform.runtime runtime.translate})))
(def: extender
Extender
@@ -132,8 +147,9 @@
..expander
analysis.bundle
..platform
- generation.bundle
- directive.bundle
+ ## generation.bundle
+ translation.bundle
+ bundle.empty
jvm/program.program
..extender
service