diff options
author | Eduardo Julian | 2020-03-19 21:18:58 -0400 |
---|---|---|
committer | Eduardo Julian | 2020-03-19 21:18:58 -0400 |
commit | 6b8678f818a5f7399a50f4e2108d96783d22fd67 (patch) | |
tree | ade6d0a7b3c2dd7a826a90a56dc6e94600b59bbb /new-luxc/source/luxc/lang/translation/jvm.lux | |
parent | 409deaa8f8a9727cf42762c8ac8ebe5b2766a04b (diff) |
Got the new compiler to build again.
Diffstat (limited to 'new-luxc/source/luxc/lang/translation/jvm.lux')
-rw-r--r-- | new-luxc/source/luxc/lang/translation/jvm.lux | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/new-luxc/source/luxc/lang/translation/jvm.lux b/new-luxc/source/luxc/lang/translation/jvm.lux index cf04d2a1a..8e2cd2af6 100644 --- a/new-luxc/source/luxc/lang/translation/jvm.lux +++ b/new-luxc/source/luxc/lang/translation/jvm.lux @@ -1,5 +1,5 @@ (.module: - [lux (#- Definition) + [lux (#- Module Definition) ["." host (#+ import: do-to object)] [abstract [monad (#+ do)]] @@ -25,7 +25,10 @@ ["." descriptor]]]] [tool [compiler - ["." name]]]] + [meta + [archive + [descriptor (#+ Module)] + ["." artifact]]]]]] [/// [host ["." jvm (#+ Inst Definition Host State) @@ -97,11 +100,9 @@ (-> Text Text) (text.replace-all .module-separator ..class-path-separator)) -(def: #export (class-name [module name]) - (-> Name Text) - (format (text.replace-all .module-separator ..class-path-separator module) - ..class-path-separator (name.normalize name) - "___" (%.nat (text@hash name)))) +(def: #export (class-name module id) + (-> Module artifact.ID Text) + (format (..class-name' module) ..class-path-separator (%.nat id))) (def: (evaluate! library loader eval-class valueI) (-> Library ClassLoader Text Inst (Try [Any Definition])) @@ -138,9 +139,9 @@ (loader.store class-name class-bytecode library))] (loader.load class-name loader)))) -(def: (define! library loader definition-name valueI) - (-> Library ClassLoader Name Inst (Try [Text Any Definition])) - (let [class-name (..class-name definition-name)] +(def: (define! library loader module id valueI) + (-> Library ClassLoader Module artifact.ID Inst (Try [Text Any Definition])) + (let [class-name (..class-name module id)] (do try.monad [[value definition] (evaluate! library loader class-name valueI)] (wrap [class-name value definition])))) @@ -152,9 +153,8 @@ (: Host (structure (def: (evaluate! temp-label valueI) - (let [eval-class (|> temp-label name.normalize (text.replace-all " " "$"))] - (:: try.monad map product.left - (..evaluate! library loader eval-class valueI)))) + (:: try.monad map product.left + (..evaluate! library loader (text.replace-all " " "$" temp-label) valueI))) (def: execute! (..execute! library loader)) |