aboutsummaryrefslogtreecommitdiff
path: root/lux-jvm/source/luxc/lang/translation/jvm.lux
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--lux-jvm/source/luxc/lang/translation/jvm.lux92
1 files changed, 46 insertions, 46 deletions
diff --git a/lux-jvm/source/luxc/lang/translation/jvm.lux b/lux-jvm/source/luxc/lang/translation/jvm.lux
index 88dc6a96f..84eff942e 100644
--- a/lux-jvm/source/luxc/lang/translation/jvm.lux
+++ b/lux-jvm/source/luxc/lang/translation/jvm.lux
@@ -1,6 +1,6 @@
(.module:
[lux (#- Module Definition)
- ["." host (#+ import: do-to object)]
+ ["." host (#+ import: do_to object)]
[abstract
[monad (#+ do)]]
[control
@@ -30,7 +30,7 @@
["." version]
["." generation]]]
[meta
- [io (#+ lux-context)]
+ [io (#+ lux_context)]
[archive
[descriptor (#+ Module)]
["." artifact]]]]]]
@@ -57,27 +57,27 @@
(type: #export ByteCode Binary)
-(def: #export value-field Text "_value")
+(def: #export value_field Text "_value")
(def: #export $Value (type.class "java.lang.Object" (list)))
-(exception: #export (cannot-load {class Text} {error Text})
+(exception: #export (cannot_load {class Text} {error Text})
(exception.report
["Class" class]
["Error" error]))
-(exception: #export (invalid-field {class Text} {field Text} {error Text})
+(exception: #export (invalid_field {class Text} {field Text} {error Text})
(exception.report
["Class" class]
["Field" field]
["Error" error]))
-(exception: #export (invalid-value {class Text})
+(exception: #export (invalid_value {class Text})
(exception.report
["Class" class]))
-(def: (class-value class-name class)
+(def: (class_value class_name class)
(-> Text (java/lang/Class java/lang/Object) (Try Any))
- (case (java/lang/Class::getField ..value-field class)
+ (case (java/lang/Class::getField ..value_field class)
(#try.Success field)
(case (java/lang/reflect/Field::get #.None field)
(#try.Success ?value)
@@ -86,73 +86,73 @@
(#try.Success value)
#.None
- (exception.throw ..invalid-value class-name))
+ (exception.throw ..invalid_value class_name))
(#try.Failure error)
- (exception.throw ..cannot-load [class-name error]))
+ (exception.throw ..cannot_load [class_name error]))
(#try.Failure error)
- (exception.throw ..invalid-field [class-name ..value-field error])))
+ (exception.throw ..invalid_field [class_name ..value_field error])))
-(def: class-path-separator ".")
+(def: class_path_separator ".")
-(def: #export bytecode-name
+(def: #export bytecode_name
(-> Text Text)
- (text.replace-all ..class-path-separator .module-separator))
+ (text.replace_all ..class_path_separator .module_separator))
-(def: #export (class-name [module-id artifact-id])
+(def: #export (class_name [module_id artifact_id])
(-> generation.Context Text)
- (format lux-context
- ..class-path-separator (%.nat version.version)
- ..class-path-separator (%.nat module-id)
- ..class-path-separator (%.nat artifact-id)))
+ (format lux_context
+ ..class_path_separator (%.nat version.version)
+ ..class_path_separator (%.nat module_id)
+ ..class_path_separator (%.nat artifact_id)))
(def: (evaluate! library loader context valueI)
(-> Library java/lang/ClassLoader generation.Context Inst (Try [Any Definition]))
- (let [eval-class (..class-name context)
- bytecode-name (..bytecode-name eval-class)
+ (let [eval_class (..class_name context)
+ bytecode_name (..bytecode_name eval_class)
bytecode (def.class #jvm.V1_6
#jvm.Public jvm.noneC
- bytecode-name
+ bytecode_name
(list) $Value
(list)
(|>> (def.field #jvm.Public ($_ jvm.++F jvm.finalF jvm.staticF)
- ..value-field ..$Value)
+ ..value_field ..$Value)
(def.method #jvm.Public ($_ jvm.++M jvm.staticM jvm.strictM)
"<clinit>"
(type.method [(list) type.void (list)])
(|>> valueI
- (inst.PUTSTATIC (type.class bytecode-name (list)) ..value-field ..$Value)
+ (inst.PUTSTATIC (type.class bytecode_name (list)) ..value_field ..$Value)
inst.RETURN))))]
(io.run (do (try.with io.monad)
- [_ (loader.store eval-class bytecode library)
- class (loader.load eval-class loader)
- value (\ io.monad wrap (..class-value eval-class class))]
+ [_ (loader.store eval_class bytecode library)
+ class (loader.load eval_class loader)
+ value (\ io.monad wrap (..class_value eval_class class))]
(wrap [value
- [eval-class bytecode]])))))
+ [eval_class bytecode]])))))
-(def: (execute! library loader [class-name class-bytecode])
+(def: (execute! library loader [class_name class_bytecode])
(-> Library java/lang/ClassLoader Definition (Try Any))
(io.run (do (try.with io.monad)
- [existing-class? (|> (atom.read library)
+ [existing_class? (|> (atom.read library)
(\ io.monad map (function (_ library)
- (dictionary.key? library class-name)))
+ (dictionary.key? library class_name)))
(try.lift io.monad)
(: (IO (Try Bit))))
- _ (if existing-class?
+ _ (if existing_class?
(wrap [])
- (loader.store class-name class-bytecode library))]
- (loader.load class-name loader))))
+ (loader.store class_name class_bytecode library))]
+ (loader.load class_name loader))))
(def: (define! library loader context valueI)
(-> Library java/lang/ClassLoader generation.Context Inst (Try [Text Any Definition]))
(do try.monad
[[value definition] (evaluate! library loader context valueI)]
- (wrap [(..class-name context) value definition])))
+ (wrap [(..class_name context) value definition])))
(def: #export host
(IO Host)
- (io (let [library (loader.new-library [])
+ (io (let [library (loader.new_library [])
loader (loader.memory library)]
(: Host
(structure
@@ -167,21 +167,21 @@
(..define! library loader))
(def: (ingest context bytecode)
- [(..class-name context) bytecode])
+ [(..class_name context) bytecode])
- (def: (re-learn context [_ bytecode])
+ (def: (re_learn context [_ bytecode])
(io.run
- (loader.store (..class-name context) bytecode library)))
+ (loader.store (..class_name context) bytecode library)))
- (def: (re-load context [_ bytecode])
+ (def: (re_load context [_ bytecode])
(io.run
(do (try.with io.monad)
- [#let [class-name (..class-name context)]
- _ (loader.store class-name bytecode library)
- class (loader.load class-name loader)]
- (\ io.monad wrap (..class-value class-name class))))))))))
+ [#let [class_name (..class_name context)]
+ _ (loader.store class_name bytecode library)
+ class (loader.load class_name loader)]
+ (\ io.monad wrap (..class_value class_name class))))))))))
(def: #export $Variant (type.array ..$Value))
(def: #export $Tuple (type.array ..$Value))
-(def: #export $Runtime (type.class (..class-name [0 0]) (list)))
-(def: #export $Function (type.class (..class-name [0 1]) (list)))
+(def: #export $Runtime (type.class (..class_name [0 0]) (list)))
+(def: #export $Function (type.class (..class_name [0 1]) (list)))