From 8ebf2d5b9d368338b2be1fa53042c84a6f8ef682 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Sat, 11 Jan 2020 02:53:52 -0400 Subject: Re-located code related to Lux's compilation across the different phases. --- new-luxc/source/luxc/lang/directive/jvm.lux | 19 ++++++----- new-luxc/source/luxc/lang/host/jvm.lux | 4 ++- new-luxc/source/luxc/lang/translation/jvm/case.lux | 6 ++-- .../luxc/lang/translation/jvm/expression.lux | 8 +++-- .../luxc/lang/translation/jvm/extension/common.lux | 17 ++++++---- .../luxc/lang/translation/jvm/extension/host.lux | 31 ++++++++++-------- .../source/luxc/lang/translation/jvm/function.lux | 10 +++--- new-luxc/source/luxc/lang/translation/jvm/loop.lux | 8 +++-- .../source/luxc/lang/translation/jvm/reference.lux | 6 ++-- .../source/luxc/lang/translation/jvm/runtime.lux | 8 +++-- .../source/luxc/lang/translation/jvm/structure.lux | 6 ++-- new-luxc/source/program.lux | 38 ++++++++++++---------- 12 files changed, 94 insertions(+), 67 deletions(-) (limited to 'new-luxc/source') diff --git a/new-luxc/source/luxc/lang/directive/jvm.lux b/new-luxc/source/luxc/lang/directive/jvm.lux index bb6c3b1c7..6d446e91d 100644 --- a/new-luxc/source/luxc/lang/directive/jvm.lux +++ b/new-luxc/source/luxc/lang/directive/jvm.lux @@ -21,14 +21,17 @@ ["." row (#+ Row) ("#@." functor fold)]]] [tool [compiler - [synthesis (#+ Synthesis)] - ["." generation] - ["." directive] - ["." phase - ["." extension (#+ Extender) - ["." bundle] - [directive - ["./" lux]]]]]]] + ["." phase] + [language + [lux + [synthesis (#+ Synthesis)] + ["." generation] + ["." directive] + [phase + ["." extension (#+ Extender) + ["." bundle] + [directive + ["./" lux]]]]]]]]] [/// [host ["." jvm (#+ Inst) diff --git a/new-luxc/source/luxc/lang/host/jvm.lux b/new-luxc/source/luxc/lang/host/jvm.lux index e02632d32..5bcc3eef0 100644 --- a/new-luxc/source/luxc/lang/host/jvm.lux +++ b/new-luxc/source/luxc/lang/host/jvm.lux @@ -20,7 +20,9 @@ [tool [compiler [reference (#+ Register)] - ["." generation]]]]) + [language + [lux + ["." generation]]]]]]) (import: org/objectweb/asm/MethodVisitor) diff --git a/new-luxc/source/luxc/lang/translation/jvm/case.lux b/new-luxc/source/luxc/lang/translation/jvm/case.lux index 7ea571450..048acbdab 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/case.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/case.lux @@ -16,8 +16,10 @@ ["." signature (#+ Signature)]]]] [tool [compiler - ["." synthesis (#+ Path Synthesis)] - ["." phase ("operation@." monad)]]]] + ["." phase ("operation@." monad)] + [language + [lux + ["." synthesis (#+ Path Synthesis)]]]]]] [luxc [lang [host diff --git a/new-luxc/source/luxc/lang/translation/jvm/expression.lux b/new-luxc/source/luxc/lang/translation/jvm/expression.lux index c6b77e549..ad2da41b6 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/expression.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/expression.lux @@ -2,9 +2,11 @@ [lux #* [tool [compiler - ["." synthesis] - [phase - ["." extension]]]]] + [language + [lux + ["." synthesis] + [phase + ["." extension]]]]]]] [luxc [lang [host diff --git a/new-luxc/source/luxc/lang/translation/jvm/extension/common.lux b/new-luxc/source/luxc/lang/translation/jvm/extension/common.lux index b2f24de63..cc703f17d 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/extension/common.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/extension/common.lux @@ -18,13 +18,16 @@ ["." type]]] [tool [compiler - ["." synthesis (#+ Synthesis %synthesis)] - ["." phase - [generation - [extension (#+ Nullary Unary Binary Trinary Variadic - nullary unary binary trinary variadic)]] - ["." extension - ["." bundle]]]]] + ["." phase] + [language + [lux + ["." synthesis (#+ Synthesis %synthesis)] + [phase + [generation + [extension (#+ Nullary Unary Binary Trinary Variadic + nullary unary binary trinary variadic)]] + ["." extension + ["." bundle]]]]]]] [host (#+ import:)]] [luxc [lang diff --git a/new-luxc/source/luxc/lang/translation/jvm/extension/host.lux b/new-luxc/source/luxc/lang/translation/jvm/extension/host.lux index bee116b1a..b5577cfcd 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/extension/host.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/extension/host.lux @@ -1,5 +1,6 @@ (.module: [lux (#- Type primitive int char type) + [host (#+ import:)] [abstract ["." monad (#+ do)]] [control @@ -28,21 +29,23 @@ ["." parser]]]] [tool [compiler - [analysis (#+ Environment)] ["." reference (#+ Variable)] - ["." synthesis (#+ Synthesis Path %synthesis)] - ["." generation] - ["." phase ("#@." monad) - [generation - [extension (#+ Nullary Unary Binary - nullary unary binary)]] - [analysis - [".A" reference]] - ["." extension - ["." bundle] - [analysis - ["/" jvm]]]]]] - [host (#+ import:)]] + ["." phase ("#@." monad)] + [language + [lux + [analysis (#+ Environment)] + ["." synthesis (#+ Synthesis Path %synthesis)] + ["." generation] + [phase + [generation + [extension (#+ Nullary Unary Binary + nullary unary binary)]] + [analysis + [".A" reference]] + ["." extension + ["." bundle] + [analysis + ["/" jvm]]]]]]]]] [luxc [lang [host diff --git a/new-luxc/source/luxc/lang/translation/jvm/function.lux b/new-luxc/source/luxc/lang/translation/jvm/function.lux index 4d60c5fb0..ec5d9c61f 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/function.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/function.lux @@ -19,10 +19,12 @@ [compiler [arity (#+ Arity)] [reference (#+ Register)] - [analysis (#+ Environment)] - [synthesis (#+ Synthesis Abstraction Apply)] - ["." generation] - ["." phase]]]] + ["." phase] + [language + [lux + [analysis (#+ Environment)] + [synthesis (#+ Synthesis Abstraction Apply)] + ["." generation]]]]]] [luxc [lang [host diff --git a/new-luxc/source/luxc/lang/translation/jvm/loop.lux b/new-luxc/source/luxc/lang/translation/jvm/loop.lux index 6f336d7c1..a2c25e883 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/loop.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/loop.lux @@ -12,9 +12,11 @@ [tool [compiler [reference (#+ Register)] - ["." synthesis (#+ Synthesis)] - ["." generation] - ["." phase]]]] + ["." phase] + [language + [lux + ["." synthesis (#+ Synthesis)] + ["." generation]]]]]] [luxc [lang [host diff --git a/new-luxc/source/luxc/lang/translation/jvm/reference.lux b/new-luxc/source/luxc/lang/translation/jvm/reference.lux index fd4d12456..ba5cb33de 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/reference.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/reference.lux @@ -12,8 +12,10 @@ [compiler ["." name] ["." reference (#+ Register Variable)] - ["." generation] - ["." phase ("operation@." monad)]]]] + ["." phase ("operation@." monad)] + [language + [lux + ["." generation]]]]]] [luxc [lang [host diff --git a/new-luxc/source/luxc/lang/translation/jvm/runtime.lux b/new-luxc/source/luxc/lang/translation/jvm/runtime.lux index 56031fc5a..72763d01f 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/runtime.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/runtime.lux @@ -14,9 +14,11 @@ [tool [compiler [arity (#+ Arity)] - ["." synthesis] - ["." generation] - ["." phase]]]] + ["." phase] + [language + [lux + ["." synthesis] + ["." generation]]]]]] [luxc [lang [host diff --git a/new-luxc/source/luxc/lang/translation/jvm/structure.lux b/new-luxc/source/luxc/lang/translation/jvm/structure.lux index 10c9bacb9..9ce90085c 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/structure.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/structure.lux @@ -19,8 +19,10 @@ ["." signature (#+ Signature)]]]] [tool [compiler - [synthesis (#+ Synthesis)] - ["." phase]]]] + ["." phase] + [language + [lux + [synthesis (#+ Synthesis)]]]]]] [luxc [lang [host diff --git a/new-luxc/source/program.lux b/new-luxc/source/program.lux index fc34eecdc..fccc63d1a 100644 --- a/new-luxc/source/program.lux +++ b/new-luxc/source/program.lux @@ -24,25 +24,27 @@ [bytecode (#+ Bytecode)]]] [tool [compiler - [analysis - ["." macro (#+ Expander)]] - [phase - [extension (#+ Phase Bundle Operation Handler Extender) - ["." analysis #_ - ["#" jvm]] - ["." generation #_ - ["#" jvm]] - ## ["." directive #_ - ## ["#" jvm]] - ] - [generation - ["." jvm #_ - ## ["." runtime (#+ Anchor Definition)] - ["." packager] - ## ["#/." host] - ]]] [default - ["." platform (#+ Platform)]]]]] + ["." platform (#+ Platform)]] + [language + [lux + [analysis + ["." macro (#+ Expander)]] + [phase + [extension (#+ Phase Bundle Operation Handler Extender) + ["." analysis #_ + ["#" jvm]] + ["." generation #_ + ["#" jvm]] + ## ["." directive #_ + ## ["#" jvm]] + ] + [generation + ["." jvm #_ + ## ["." runtime (#+ Anchor Definition)] + ["." packager] + ## ["#/." host] + ]]]]]]]] [program ["/" compositor ["/." cli]]] -- cgit v1.2.3