aboutsummaryrefslogtreecommitdiff
path: root/lux-jvm/source/luxc/lang/translation
diff options
context:
space:
mode:
authorEduardo Julian2022-01-25 21:26:50 -0400
committerEduardo Julian2022-01-25 21:26:50 -0400
commit7661faaa22a253bb4703992b638038d96ead0ade (patch)
tree748bca72a2aad0d33a4268ad0d0d39fa4e24b384 /lux-jvm/source/luxc/lang/translation
parent9a08039adfe40f76b9d5a5351005671c15b557bf (diff)
Bug fixes for eval in general and in Lux/Ruby.
Diffstat (limited to 'lux-jvm/source/luxc/lang/translation')
-rw-r--r--lux-jvm/source/luxc/lang/translation/jvm.lux11
1 files changed, 5 insertions, 6 deletions
diff --git a/lux-jvm/source/luxc/lang/translation/jvm.lux b/lux-jvm/source/luxc/lang/translation/jvm.lux
index 0dcb684e9..c2f7cea68 100644
--- a/lux-jvm/source/luxc/lang/translation/jvm.lux
+++ b/lux-jvm/source/luxc/lang/translation/jvm.lux
@@ -109,10 +109,9 @@
..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)
+(def: (evaluate! library loader eval_class valueI)
+ (-> Library java/lang/ClassLoader Text Inst (Try [Any Definition]))
+ (let [bytecode_name (..bytecode_name eval_class)
bytecode (def.class {jvm.#V1_6}
{jvm.#Public} jvm.noneC
bytecode_name
@@ -149,7 +148,7 @@
(def: (define! library loader context custom valueI)
(-> Library java/lang/ClassLoader generation.Context (Maybe Text) Inst (Try [Text Any Definition]))
(do try.monad
- [[value definition] (evaluate! library loader context valueI)]
+ [[value definition] (evaluate! library loader (..class_name context) valueI)]
(in [(maybe.else (..class_name context)
custom)
value definition])))
@@ -163,7 +162,7 @@
(implementation
(def: (evaluate context valueI)
(# try.monad each product.left
- (..evaluate! library loader context valueI)))
+ (..evaluate! library loader (format "E" (..class_name context)) valueI)))
(def: execute
(..execute! library loader))